"เราต้องครอบคลุม StringBuilder และจากนั้นฉันคิดว่าเราเสร็จแล้ว"
"อย่างที่ทราบกันดีว่า StringBuilder นั้นเหมือนกับคลาส String ยกเว้นว่ามันจะไม่แน่นอน"
"และฉันยังจำได้ว่าคอมไพเลอร์สร้างโค้ดที่ใช้ StringBuilder เมื่อเราเพิ่มสตริงเข้าด้วยกัน"
"ใช่ คุณพูดถูก คุณมีความทรงจำที่น่าทึ่งจริงๆ แล้วอีกอย่าง หุ่นยนต์ทุกตัวก็จำได้ ฉันมักจะลืมเรื่องนั้น"
"มาตรวจสอบสิ่งที่คุณสามารถทำได้โดยใช้ คลาส StringBuilder :"
1) ฉันมีสตริงธรรมดาและฉันต้องการทำให้มันไม่แน่นอน ฉันจะทำอย่างไร
String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
2) ฉันต้องการเพิ่มอักขระในสตริงที่ไม่แน่นอนที่มีอยู่หรือไม่
String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.append("!");
3) และฉันจะแปลง StringBuilder กลับเป็นสตริงได้อย่างไร
String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.append("!");
s = s2.toString();
4) และถ้าฉันจำเป็นต้องลบตัวละคร?
String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.deleteCharAt(2); //Becomes "Beder"
5) ฉันจะแทนที่ส่วนหนึ่งของสตริงด้วยส่วนอื่นได้อย่างไร
String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.replace (3, 5, "_DE_"); //Becomes "Ben_DE_r"
6) จะทำอย่างไรถ้าฉันต้องการย้อนกลับสตริง
String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.reverse(); //Becomes "redneB";
"เยี่ยมมาก ขอบคุณ Ellie ทุกอย่างสมเหตุสมผล"
"ฉันดีใจที่คุณชอบมัน."
"ฉันอยากจะเตือนคุณเกี่ยวกับบางสิ่งที่ Bilaabo ควรบอกคุณ"
"มีอีกคลาสหนึ่งชื่อStringBufferซึ่งเหมือนกับStringBuilderแต่เมธอดของมันถูกประกาศเป็นsynchronizedซึ่งหมายความว่าก่อนที่จะเรียกใช้เมธอดใด ๆ เครื่อง Java จะตรวจสอบว่าอ็อบเจกต์ไม่ว่างหรือไม่ ถ้าไม่ใช่ JVM จะทำเครื่องหมาย ไม่ว่าง หลังจากออกจากเมธอด อ็อบเจกต์จะถูกปล่อย ผลที่ได้คือการโทรเหล่านี้ช้าลง คุณไม่ควรใช้StringBufferเว้นแต่คุณจะต้องทำ"
"แต่ถ้าคุณต้องการสตริง ที่ไม่แน่นอน ซึ่งจะใช้ในหลายๆ เธรด คุณจะไม่พบสิ่งใดที่ดีไปกว่าStringBuffer "
"ขอบคุณสำหรับข้อมูล ฉันคิดว่ามันอาจจะมีประโยชน์สักวันหนึ่ง"