โค้ดยิม/จาวาบล็อก/สุ่ม/วิธีการตัดแต่งสตริง Java ()
John Squirrels
ระดับ
San Francisco

วิธีการตัดแต่งสตริง Java ()

เผยแพร่ในกลุ่ม
แม้ว่าสายทั้งสองจะดูเหมือนกันสำหรับคุณ แต่ก็อาจไม่เหมือนกัน ตัวอย่างเช่น อาจมีช่องว่างนำหน้าและต่อท้าย คอมพิวเตอร์ "มองเห็น" แต่เราไม่เห็น Java มี เมธอด trim() พิเศษ เพื่อลบช่องว่างที่ต่อท้ายและนำหน้าออกจากสตริง ในบทความนี้ เราจะอธิบายวิธีการใช้เมธอด Java string trim()ในโปรแกรม Java และให้ตัวอย่างโค้ดบางส่วน

ลายเซ็นเมธอด Java String trim()

ลายเซ็นต์ของ เมธอด trim()ใน Java มีดังนี้:

public String trim()
อย่างที่คุณเห็น มันไม่ต้องใช้พารามิเตอร์และส่งกลับค่าสตริง โดยจะส่งคืนสำเนาของสตริงต้นฉบับ แต่จะลบช่องว่างนำหน้าและต่อท้ายทั้งหมดออก หมายเหตุสำคัญ: ช่องว่างคืออักขระใดๆ ที่มีรหัส ASCII น้อยกว่าหรือเท่ากับ 'U + 0020' หากสตริง ของเรา เป็นลำดับอักขระว่าง หรืออักขระตัวแรกและตัวสุดท้ายของลำดับอักขระที่แสดงโดย ออบเจ็กต์ String นี้ มีโค้ดที่ไม่ใช่ช่องว่าง (ตามที่กำหนดไว้ข้างต้น) การอ้างอิงถึง ออบเจ็กต์ String นี้ จะถูกส่งกลับ ถ้าอักขระทั้งหมดในสตริงของเราเป็นช่องว่าง ดังนั้น วัตถุ Stringจะถูกส่งกลับโดยเป็นตัวแทนของสตริงว่าง หากไม่มีช่องว่างที่จุดเริ่มต้นและจุดสิ้นสุดของบรรทัด เมธอดจะส่งคืนบรรทัดนั้นโดยไม่มีการเปลี่ยนแปลง

ตัวอย่างวิธีการตัดแต่งสตริง Java ()

ลองมีสองสายโดยมีและไม่มีช่องว่างที่จุดเริ่มต้นและจุดสิ้นสุดของข้อความ ข้อความจะเหมือนกันสำหรับสตริงทั้งสอง

 public class TrimDemo {
   public static void main(String[] args) {
//java string trim() method example 
      
       String noSpacesString = "I am the Walrus";
       String withSpaceString = "    I am the Walrus ";

       //printing the both strings out to make sure they are different
       System.out.println(noSpacesString);
       System.out.println(withSpaceString);
       //let's print out two string comparisons. It's false
       //because they are different
       System.out.println(noSpacesString.equals(withSpaceString));
       //trim
       withSpaceString.trim();
       System.out.println(noSpacesString.equals(withSpaceString));
       System.out.println(noSpacesString);
       System.out.println(withSpaceString);
   }
}
ผลลัพธ์คือ:
ฉันเป็นวอลรัส ฉันเป็นวอลรัส เท็จ ฉันเป็นวอลรัส ฉันเป็นวอลรัส
รออะไร?? ดูเหมือนว่าเมธอด Java string trim()ใช้งานไม่ได้! สองสตริงแรกมีความแตกต่างกันตามที่ควรจะเป็น (สตริงแรกไม่มีระยะขอบ สตริงที่สองมีช่องว่างด้านหน้าสามช่อง และอีกหนึ่งสตริงอยู่หลังข้อความ) จากนั้นเราเปรียบเทียบสองบรรทัดแล้วพิมพ์ผลลัพธ์ออกมา เห็นได้ชัดว่าเป็นเท็จเนื่องจากบรรทัดเหล่านี้แตกต่างกัน หลังจากนั้น เราใช้วิธีการตัดแต่งกับสตริงที่มีช่องว่างตามขอบ และเปรียบเทียบสตริงอีกครั้ง ... และด้วยเหตุผลบางอย่าง เราพบเท็จอีกครั้ง แม้ว่าตอนนี้มันควรจะเหมือนเดิมแล้ว! จากนั้น ในกรณีที่เราตัดสินใจพิมพ์บรรทัดเอง จะเกิดอะไรขึ้นหากปาฏิหาริย์เกิดขึ้น? อนิจจา... เส้นแตกต่างออกไปและยังคงอยู่ คุณได้เดาแล้วว่าปัญหาคืออะไร? ประเด็นก็คือสตริงใน Java เป็นวัตถุที่ไม่เปลี่ยนรูป ดังนั้น เมธอด trim()จะส่งคืนไม่ใช่สตริงเดิม แต่เป็นสตริงใหม่ อย่างไรก็ตาม เราควรทดสอบ เมธอด trim()ที่นี่ ดังนั้นเรามาเขียนโปรแกรมอื่นกันดีกว่า ที่นี่เราจะตั้งชื่อสำเนาของสตริงที่สร้างขึ้นโดยใช้เมธอดtrim()ที่จะใช้งาน ลองตรวจสอบทั้งสองสายเพื่อความเท่าเทียมกันด้วย

public class TrimDemo2 {
   public static void main(String[] args) {
       String noSpacesString = "I am the Walrus";
       String withSpaceString = "    I am the Walrus ";
       String result = withSpaceString.trim();
       System.out.println(noSpacesString);
       System.out.println(result);
       System.out.println(noSpacesString.equals(result));
   }
}
นี่คือผลลัพธ์:
ฉันคือวอลรัส ฉันเป็นวอลรัสที่แท้จริง
บิงโก! ตอนนี้มันทำงานได้ตามที่เราคาดไว้ จำเกี่ยวกับ ความไม่เปลี่ยนรูป ของ Stringไว้ มันสำคัญมากสำหรับ Java Developer ทุกคน
ความคิดเห็น
  • เป็นที่นิยม
  • ใหม่
  • เก่า
คุณต้องลงชื่อเข้าใช้เพื่อแสดงความคิดเห็น
หน้านี้ยังไม่มีความคิดเห็นใด ๆ