0. ประเภทบทนำสู่สตริง builder
ประเภท StringBuilder เป็นประเภทสตริงที่ไม่แน่นอน API ของประเภท StringBuilder นั้นเหมือนกับ API ของประเภท StringBuffer ความแตกต่างเพียงอย่างเดียวคือการใช้ StringBuilder ถือว่าเป็นในเธรดเดียว กล่าวอีกนัยหนึ่ง StringBuilder เป็นเธรด-ไม่ปลอดภัย เมื่อ stringbuilder อินสแตนซ์มักจะตั้งค่าขนาดความจุตามค่าเริ่มต้นโดยทั่วไปความยาวของพารามิเตอร์สตริง +16 StringBuilder สืบทอดคลาสนามธรรม AbstractStringBuilder และคลาสนามธรรมจะถูกนำไปใช้ภายในโดยใช้อาร์เรย์อักขระและอาเรย์สามารถขยายได้แบบไดนามิก วิธีการทั่วไปที่จัดทำโดยคลาส StringBuilder รวมถึงภาคผนวก (), insert (), แทนที่ (), deleteCharat (), indexof (), reverse (), toString () และวิธีอื่น ๆ ซึ่งสามารถตระหนักถึงฟังก์ชั่นพื้นฐานเช่นการเพิ่มการลบแก้ไขและค้นหาสาย
แพ็คเกจวันที่ 0812.demo1; คลาสสาธารณะ test3 {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {stringbuilder stringbuilder = new Stringbuilder ("eclipse"); // เพิ่ม stringbuilder = stringbuilder.append ("ซอฟต์แวร์"); // ความจุ int c = stringbuilder.capacity (); // flip stringbuilder = stringbuilder.reverse (); System.out.println (c); System.out.println (StringBuilder); - ผลการทำงาน:
23ERAWTFOS Espilce
1. เมธอด StringBuilder
StringBuilder เป็นลำดับอักขระตัวแปร มันสืบทอดมาจาก AbstractStringBuilder และดำเนินการอินเทอร์เฟซ Charsequence
StringBuffer ยังเป็นคลาสย่อยที่สืบทอดมาจาก AbstractStringBuilder; อย่างไรก็ตาม StringBuilder และ StringBuffer นั้นแตกต่างกัน อดีตไม่ปลอดภัยในขณะที่หลังเป็นเธรดที่ปลอดภัย
แผนภาพความสัมพันธ์ระหว่าง StringBuilder และ Charsequence มีดังนี้:
รายการวิธีการสตริง builder:
StringBuilder () StringBuilder (ความจุ int) StringBuilder (charsequence seq) stringbuilder (string str) stringbuilder ผนวก (float f) uptringbuilder ผนวก (double d) append append append append append append append append append append append append append append append append append ของ stringbuilder chars) stringbuilder supt (char [] str, int offset, int len) stringbuilder ผนวก (สตริง str) stringbuilder ผนวก (Object obj) stringbuilder ผนวก (stringbuffer sb) stringbuilder string -csq) ความจุ () ถ่าน charat (ดัชนี int) int codepointat (ดัชนี int) int codepointbefore (ดัชนี int) int codepointCount (int start, int end) Stringbuilder ลบ (int start, int end) stringbuilder deletecharat (int index) int, enting int indexof (สตริงสตริง) การแทรกสตริง builder (int offset, boolean b) stringbuilder แทรก (int offset, int i) stringbuilder แทรก (int offset, long l long l) stringbuilder แทรก stringbuilder (int offset untset CH) การแทรก StringBuilder (int offset, char [] str, int stroffset, int strlen) stringbuilder แทรก (int offset, string str str) stringbuilder แทรก (int offset, object obj) string string string int ends Substring, int start) ความยาว int () int OffsetByCodePoints (INT ดัชนี, int codePointOffset) stringBuilder แทนที่ (int start, int end, สตริงสตริง) StringBuilder Reverse () void setCharat (int index, ch) void setLength (int length) trimtosize ()
เนื่องจากซอร์สโค้ดของ AbstractStringBuilder และ StringBuilder ยาวเกินไปซอร์สโค้ดจะไม่ถูกระบุไว้ที่นี่ ผู้อ่านที่สนใจสามารถศึกษาด้วยตนเอง
2. รหัสทดสอบ API StringBuilder API
2.1 แทรก (แทรก) API ที่เกี่ยวข้องใน StringBuilder
ซอร์สโค้ดมีดังนี้ (StringBuilderInsertTest.java):
/** * StringBuilder 的แทรก () 示例 * * @author Skywang */นำเข้า java.util.hashmap; คลาสสาธารณะ StringBuilderInsertTest {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {testinsertapis (); } / *** stringbuilder 的แทรก () 示例* / โมฆะคงที่ส่วนตัว testinsertapis () {system.out.println ("---------------------------- TestinSertapis ---------------------------------------------------------------------------------------------------------------------- StringBuilder sbuilder = new StringBuilder (); // แทรกอาร์เรย์อักขระที่ตำแหน่ง 0 sbuilder.insert (0, ถ่านใหม่ [] {'a', 'b', 'c', 'd', 'e'}); // แทรกอาร์เรย์อักขระที่ตำแหน่ง 0. 0 แสดงตำแหน่งเริ่มต้นของอาร์เรย์อักขระ 3 แสดงถึงความยาว sbuilder.insert (0, ถ่านใหม่ [] {'a', 'b', 'c', 'd', 'e'}, 0, 3); // แทรก float sbuilder.insert (0, 1.414f); // แทรก double sbuilder.insert (0, 3.14159d); // แทรกบูลีน sbuilder.insert (0, true); // แทรกถ่าน sbuilder.insert (0, '/n'); // แทรก int sbuilder.insert (0, 100); // แทรก sbuilder.insert ยาว (0, 14159d); // แทรกบูลีน sbuilder.insert (0, true); // แทรกถ่าน sbuilder.insert (0, '/n'); // แทรก int sbuilder.insert (0, 100); // แทรก sbuilder.insert ยาว (0, 12345L); // แทรกวัตถุ StringBuilder sbuilder.insert (0, StringBuilder ใหม่ ("StringBuilder")); // แทรกวัตถุ StringBuilder ที่ตำแหน่ง 0. 6 หมายถึงตำแหน่งเริ่มต้น (รวม) ของวัตถุที่แทรกที่ตำแหน่ง 0, 13 คือตำแหน่งสิ้นสุด (ยกเว้น) sbuilder.insert (0, สตริงใหม่ ("StringBuilder"), 6, 13); // แทรกวัตถุ StringBuffer ที่ตำแหน่ง 0. SBUILDER.INSERT (0, StringBuffer ใหม่ ("StringBuffer")); // แทรกวัตถุ StringBuffer ที่ตำแหน่ง 0. 6 หมายถึงตำแหน่งเริ่มต้น (รวม) ของวัตถุที่แทรกที่ตำแหน่ง 0, 12 คือตำแหน่งสิ้นสุด (ไม่รวม) sbuilder.insert (0, สตริงใหม่ ("Stringbuffer"), 6, 12); // แทรกวัตถุสตริงที่ตำแหน่ง 0. sbuilder.insert (0, "สตริง"); // แทรกวัตถุสตริงที่ตำแหน่ง 0. 1 หมายถึงตำแหน่งเริ่มต้น (รวม) ของวัตถุที่แทรกที่ตำแหน่ง 0, 6 คือตำแหน่งสุดท้าย (ไม่รวม) sbuilder.insert (0, "0123456789", 1, 6); sbuilder.insert (0, '/n'); // แทรกวัตถุวัตถุที่ตำแหน่ง 0. ที่นี่เราใช้ hashmap เป็นตัวอย่าง hashmap map = new hashmap (); map.put ("1", "หนึ่ง"); map.put ("2", "สอง"); map.put ("3", "สาม"); sbuilder.insert (0, แผนที่); System.out.printf ("%s/n/n", sbuilder); - ผลการทำงาน:
-----
2.2 ผนวก (ผนวก) API ที่เกี่ยวข้องใน StringBuilder
ซอร์สโค้ดมีดังนี้ (StringBuilderAppendTest.java):
/** * StringBuilder 的ผนวก () 示例 * * @author Skywang */นำเข้า java.util.hashmap; คลาสสาธารณะ StringBuilderAppendTest {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {testappendapis (); } / *** stringbuilder 的ผนวก () 示例* / โมฆะคงที่ส่วนตัว testappendapis () {system.out.println ("---------------------------- Testappendapis ---------------------------------------------------------------------------------------------------------------------- StringBuilder sbuilder = new StringBuilder (); // ผนวกอักขระอาร์เรย์ sbuilder.append (ถ่านใหม่ [] {'a', 'b', 'c', 'd', 'e'}); // ต่อท้ายอาร์เรย์อักขระ 0 ระบุตำแหน่งเริ่มต้นของอาร์เรย์อักขระ 3 หมายถึงความยาว sbuilder.append (ถ่านใหม่ [] {'a', 'b', 'c', 'd', 'e'}, 0, 3); // ผนวกลอย sbuilder.append (1.414f); // ผนวกสอง sbuilder.append (3.14159d); // ผนวกบูลีน sbuilder.append (จริง); // ผนวกถ่าน sbuilder.append ('/n'); // ผนวก int sbuilder.append (100); // ผนวก Sbuilder Long Long (12345L); // ผนวกวัตถุสตริง builder sbuilder.append (สตริงใหม่ ("stringbuilder")); // ผนวกวัตถุ StringBuilder 6 ระบุตำแหน่งเริ่มต้น (รวมถึง) ของวัตถุต่อท้าย, 13 คือตำแหน่งสิ้นสุด (ไม่รวม) sbuilder.append (สตริงใหม่ ("StringBuilder"), 6, 13); // ต่อท้ายวัตถุ StringBuffer sbuilder.append (Stringbuffer ใหม่ ("StringBuffer")); // ต่อท้ายวัตถุ StringBuffer 6 ระบุตำแหน่งเริ่มต้น (รวมถึง) ของวัตถุต่อท้าย, 12 คือตำแหน่งสิ้นสุด (ไม่รวม) sbuilder.append (สตริงใหม่ ("Stringbuffer"), 6, 12); // ผนวกวัตถุสตริง sbuilder.append ("String"); // ผนวกวัตถุสตริง 1 ระบุตำแหน่งเริ่มต้น (รวมถึง) ของวัตถุต่อท้าย, 6 คือตำแหน่งสิ้นสุด (ไม่รวม) sbuilder.append ("0123456789", 1, 6); sbuilder.append ('/n'); // ผนวกวัตถุวัตถุ ที่นี่เราใช้ hashmap เป็นตัวอย่าง hashmap map = new hashmap (); map.put ("1", "หนึ่ง"); map.put ("2", "สอง"); map.put ("3", "สาม"); sbuilder.append (แผนที่); sbuilder.append ('/n'); // ผนวกการเข้ารหัส Unicode Sbuilder.AppendCodePoint (0x5b57); // 0x5b57 เป็น unicode encoding sbuilder.appendcodepoint (0x7b26); // 0x7b26 เป็น unicode encoding sbuilder.appendcodepoint (0x7f16); // 0x7f16 เป็น "เข้ารหัส" unicode encoding sbuilder.appendCodePoint (0x7801); // 0x7801 เป็น "เข้ารหัส" unicode encoding system.out.printf ("%s/n/n", sbuilder); - ผลการทำงาน:
- -
2.3 แทนที่ API ที่เกี่ยวข้องใน StringBuilder
ซอร์สโค้ดมีดังนี้ (StringBuilderReplacetest.java):
/** * stringbuilder 的แทนที่ () 示例 * * @author skywang */นำเข้า java.util.hashmap; คลาสสาธารณะ StringBuilderReplacetest {โมฆะคงที่สาธารณะหลัก (String [] args) {testreplaceapis (); } / *** stringbuilder 的แทนที่ () 示例* / โมฆะส่วนตัวคงที่ testreplaceapis () {system.out.println ("---------------------------- Testreplaceapis ---------------------------------------------- Stringbuilder sbuilder; sbuilder = new StringBuilder ("0123456789"); sbuilder.replace (0, 3, "abcde"); System.out.printf ("sbuilder =%s/n", sbuilder); sbuilder = new StringBuilder ("0123456789"); sbuilder.reverse (); System.out.printf ("sbuilder =%s/n", sbuilder); sbuilder = new StringBuilder ("0123456789"); sbuilder.setcharat (0, 'm'); System.out.printf ("sbuilder =%s/n", sbuilder); System.out.println (); - ผลการทำงาน:
-----
2.4 ลบ (ลบ) API ที่เกี่ยวข้องใน StringBuilder
ซอร์สโค้ดมีดังนี้ (StringBuilderDeleTeTest.java):
/** * stringbuilder 的 delete () 示例 * * @author skywang */import java.util.hashmap; คลาสสาธารณะ StringBuilderDeleTetest {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {testDeletePis (); } / *** stringbuilder 的 delete () 示例* / โมฆะส่วนตัวคงที่ testdeleteapis () {system.out.println ("---------------------------- TestDeleTeapis ------------------------------------------------------------------------------------------ StringBuilder sbuilder = new StringBuilder ("0123456789"); // ลบตัวละครที่ตำแหน่ง 0 ตัวละครที่เหลือคือ "123456789" sbuilder.deletecharat (0); // ลบอักขระระหว่างตำแหน่ง 3 (รวม) และตำแหน่ง 6 (ไม่รวม) และอักขระที่เหลือคือ "123789" sbuilder.delete (3,6); // รับสตริงเริ่มต้นจากตำแหน่ง 1 ใน SB String str1 = sbuilder.substring (1); // รับสตริงจากตำแหน่ง 3 (รวม) ถึงตำแหน่ง 5 (ไม่รวม) ใน SB String str2 = sbuilder.substring (3, 5); // รับสตริงจากตำแหน่ง 3 (รวม) ถึงตำแหน่ง 5 (ไม่รวม) ใน SB String str3 = (String) Sbuilder.Subeence (3, 5); System.out.printf ("sbuilder =%s/nstr1 =%s/nstr2 =%s/nstr3 =%s/n", sbuilder, str1, str2, str3); - ผลการทำงาน:
-----
2.5 API ที่เกี่ยวข้องกับดัชนีใน StringBuilder
ซอร์สโค้ดมีดังนี้ (StringBuilderIndextest.java):
/** * การสาธิต API ที่เกี่ยวข้องกับดัชนีใน StringBuilder * * @author Skywang */นำเข้า java.util.hashmap; คลาสสาธารณะ StringBuilderIndextest {โมฆะสาธารณะคงที่หลัก (สตริง [] args) {testIndExapis (); } / *** การสาธิต API ที่เกี่ยวข้องกับดัชนีใน StringBuilder* / Void Private Static Void TestIndExapis () { System.out.println ("------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ใหม่ StringBuilder ("ABCABCABCABCABCABCABC"); sbuilder.indexof ("bc")); "BC" ปรากฏขึ้นเป็นครั้งแรก System.out.printf (" %-30s = %d/n", "sbuilder.lastindexof (/" bc/")", sbuilder.lastindexof ("bc")); // 4. จากด้านหน้าไปด้านหน้าค้นหาตำแหน่งที่ "BC" ปรากฏขึ้นเป็นครั้งแรก System.out.printf (" %-30s = %d/n", "sbuilder.aslastindexof (/" bc/", 4)", sbuilder.astindexof ("bc", 4); System.out.println (); - ผลการทำงาน:
---------------------------- TestIndexapis -------------------------------- sbuilder = abcabcabcabcabcabcabcsbuilder.indexof ("bc") = 1sbuilder.indexof ("bc", 5) = 22sbuilder.lastindexof (") 22Sbuilder.lastindexof ("BC", 4) = 4 2.6 StringBuilder ที่เหลืออยู่ API
ซอร์สโค้ดมีดังนี้ (StringBuilderotherTest.java):
/** * ตัวอย่าง API อื่น ๆ ของ StringBuilder * * @author Skywang */นำเข้า java.util.hashmap; คลาสสาธารณะ StringBuilderotherTest {โมฆะสาธารณะคงที่หลัก (สตริง [] args) {testotherapis (); } / *** ตัวอย่าง API อื่น ๆ ของ StringBuilder* / Void Private Static Void Testotherapis () { System.out.println ("------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ StringBuilder ("0123456789"); 0); สำหรับ (int i = 0; i <carr.length; ผลการทำงาน:
-----
3. StringBuilder ตัวอย่างสมบูรณ์
ตัวอย่างต่อไปนี้เป็นโปรแกรมการสาธิต StringBuilder ที่สมบูรณ์แบบรวมตัวอย่างข้างต้น ซอร์สโค้ดมีดังนี้ (StringBuilderTest.java):
/** * โปรแกรมการสาธิต StringBuilder * * @author Skywang */นำเข้า Java.util.hashmap; Stringbuildertest ระดับสาธารณะ {โมฆะสาธารณะคงที่หลัก (สตริง [] args) {testotherapis (); TestIndExapis (); testinsertapis (); testappendapis (); Testreplaceapis (); testdeleteapis (); } / *** ตัวอย่าง API อื่น ๆ ของ StringBuilder* / Void Private Static Void Testotherapis () {System.out.println ("---------------------------- Testotherapis ---------------------------------------------- StringBuilder sbuilder = new StringBuilder ("0123456789"); int cap = sbuilder.capacity (); System.out.printf ("cap =%d/n", cap); ถ่าน c = sbuilder.charat (6); System.out.printf ("c =%c/n", c); ถ่าน [] carr = ใหม่ถ่าน [4]; sbuilder.getchars (3, 7, carr, 0); สำหรับ (int i = 0; i <carr.length; i ++) system.out.printf ("carr [%d] =%c", i, carr [i]); System.out.println (); System.out.println (); } / *** stringbuilder 中ดัชนี相关 api 演示* / โมฆะคงที่ส่วนตัว testindexapis () {system.out.println ("---------------------------- TestIndexapis ------------------------------------------------------------------ StringBuilder sbuilder = new StringBuilder ("abcabcabcabcabcabcabcabc"); System.out.printf ("sbuilder =%s/n", sbuilder); // 1. จากด้านหน้าไปด้านหลังค้นหาตำแหน่งที่ "BC" ปรากฏเป็นครั้งแรก System.out.printf (" %-30s = %d/n", "sbuilder.indexof (/" bc/")", sbuilder.indexof ("bc"); // 2. จากตำแหน่งที่ 5 จากด้านหน้าไปด้านหลังค้นหาตำแหน่งที่ "BC" ปรากฏเป็นครั้งแรก System.out.printf (" %-30s = %d/n", "sbuilder.indexof (/" bc/", 5)", sbuilder.indexof ("bc", 5); // 3. จากด้านหลังไปด้านหน้าค้นหาตำแหน่งที่ "BC" ปรากฏขึ้นเป็นครั้งแรก System.out.printf (" %-30s = %d/n", "sbuilder.aslastindexof (/" bc/")", sbuilder.astindexof ("bc"); // 4. จากด้านหน้าไปด้านหน้าค้นหาตำแหน่งที่ "BC" ปรากฏขึ้นเป็นครั้งแรก System.out.printf (" %-30s = %d/n", "sbuilder.aslastindexof (/" bc/", 4)", sbuilder.astindexof ("bc", 4); System.out.println (); } / *** stringbuilder 的แทนที่ () 示例* / โมฆะส่วนตัวคงที่ testreplaceapis () {system.out.println ("---------------------------- Testreplaceapis ---------------------------------------------- Stringbuilder sbuilder; sbuilder = new StringBuilder ("0123456789"); sbuilder.replace (0, 3, "abcde"); System.out.printf ("sbuilder =%s/n", sbuilder); sbuilder = new StringBuilder ("0123456789"); sbuilder.reverse (); System.out.printf ("sbuilder =%s/n", sbuilder); sbuilder = new StringBuilder ("0123456789"); sbuilder.setcharat (0, 'm'); System.out.printf ("sbuilder =%s/n", sbuilder); System.out.println (); } / *** StringBuilder DELETE () ตัวอย่าง* / Void Private Static Void TestDeleTeapis () { System.out.println ("------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ - sbuilder.deletecharat (0); str2 = sbuilder.substring (3, 5); System.out.printf ("sbuilder =%s/nstr1 =%s/nstr2 =%s/nstr3 =%s/n", sbuilder, str1, str2, str3); } / *** stringbuilder insert () ตัวอย่าง* / โมฆะส่วนตัวแบบคงที่ testinsertapis () { System.out.println ("------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ - 0 หมายถึงตำแหน่งเริ่มต้นของอาร์เรย์ตัวละคร 3 หมายถึงความยาว sbuilder.insert (0, ถ่านใหม่ [] {'a', 'b', 'c', 'd', 'e'}, 0, 3); sbuilder.insert (0, true); // แทรกถ่าน sbuilder.insert (0, '/n'); // แทรก int sbuilder.insert (0, 100); // แทรก sbuilder.insert ยาว (0, 12345L); // แทรกวัตถุ StringBuilder sbuilder.insert (0, StringBuilder ใหม่ ("StringBuilder")); // แทรกวัตถุ StringBuilder ที่ตำแหน่ง 0. 6 หมายถึงตำแหน่งเริ่มต้น (รวม) ของวัตถุที่แทรกที่ตำแหน่ง 0, 13 คือตำแหน่งสิ้นสุด (ยกเว้น) sbuilder.insert (0, สตริงใหม่ ("StringBuilder"), 6, 13); // แทรกวัตถุ StringBuffer ที่ตำแหน่ง 0. SBUILDER.INSERT (0, StringBuffer ใหม่ ("StringBuffer")); // แทรกวัตถุ StringBuffer ที่ตำแหน่ง 0. 6 หมายถึงตำแหน่งเริ่มต้น (รวม) ของวัตถุที่แทรกที่ตำแหน่ง 0, 12 คือตำแหน่งสิ้นสุด (ไม่รวม) sbuilder.insert (0, สตริงใหม่ ("Stringbuffer"), 6, 12); // แทรกวัตถุสตริงที่ตำแหน่ง 0. sbuilder.insert (0, "สตริง"); // แทรกวัตถุสตริงที่ตำแหน่ง 0. 1 หมายถึงตำแหน่งเริ่มต้น (รวม) ของวัตถุที่แทรกที่ตำแหน่ง 0, 6 คือตำแหน่งสุดท้าย (ไม่รวม) sbuilder.insert (0, "0123456789", 1, 6); sbuilder.insert (0, '/n'); // แทรกวัตถุวัตถุที่ตำแหน่ง 0 此处以 hashmap 为例 Hashmap Map = ใหม่ hashmap (); map.put ("1", "หนึ่ง"); map.put ("2", "สอง"); map.put ("3", "สาม"); sbuilder.insert (0, แผนที่); System.out.printf ("%s/n/n", sbuilder); } / *** stringbuilder 的ผนวก () 示例* / โมฆะส่วนตัวแบบคงที่ testappendapis () {system.out.println ("---------------------------- Testappendapis -------------------------------------------------- StringBuilder sbuilder = new StringBuilder (); // ผนวกอักขระอาร์เรย์ sbuilder.append (ถ่านใหม่ [] {'a', 'b', 'c', 'd', 'e'}); // ต่อท้ายอาร์เรย์อักขระ 0 ระบุตำแหน่งเริ่มต้นของอาร์เรย์อักขระ 3 หมายถึงความยาว sbuilder.append (ถ่านใหม่ [] {'a', 'b', 'c', 'd', 'e'}, 0, 3); // ผนวกลอย sbuilder.append (1.414f); // ผนวกสอง sbuilder.append (3.14159d); // ผนวกบูลีน sbuilder.append (จริง); // ผนวกถ่าน sbuilder.append ('/n'); // ผนวก int sbuilder.append (100); // ผนวก Sbuilder Long Long (12345L); // ผนวกวัตถุสตริง builder sbuilder.append (สตริงใหม่ ("stringbuilder")); // ผนวกวัตถุ StringBuilder 6 ระบุตำแหน่งเริ่มต้น (รวมถึง) ของวัตถุต่อท้าย, 13 คือตำแหน่งสิ้นสุด (ไม่รวม) sbuilder.append (สตริงใหม่ ("StringBuilder"), 6, 13); // ต่อท้ายวัตถุ StringBuffer sbuilder.append (Stringbuffer ใหม่ ("StringBuffer")); // ต่อท้ายวัตถุ StringBuffer 6 ระบุตำแหน่งเริ่มต้น (รวมถึง) ของวัตถุต่อท้าย, 12 คือตำแหน่งสิ้นสุด (ไม่รวม) sbuilder.append (สตริงใหม่ ("Stringbuffer"), 6, 12); // ผนวกวัตถุสตริง sbuilder.append ("String"); // ผนวกวัตถุสตริง 1 ระบุตำแหน่งเริ่มต้น (รวมถึง) ของวัตถุต่อท้าย, 6 คือตำแหน่งสิ้นสุด (ไม่รวม) sbuilder.append ("0123456789", 1, 6); sbuilder.append ('/n'); // ผนวกวัตถุวัตถุ ที่นี่เราใช้ hashmap เป็นตัวอย่าง hashmap map = new hashmap (); map.put ("1", "หนึ่ง"); map.put ("2", "สอง"); map.put ("3", "สาม"); sbuilder.append (แผนที่); sbuilder.append ('/n'); // ผนวกการเข้ารหัส Unicode Sbuilder.AppendCodePoint (0x5b57); // 0x5b57 เป็น unicode encoding sbuilder.appendcodepoint (0x7b26); // 0x7b26 เป็น unicode encoding sbuilder.appendcodepoint (0x7f16); // 0x7f16 เป็น "เข้ารหัส" unicode encoding sbuilder.appendCodePoint (0x7801); // 0x7801 เป็น "เข้ารหัส" unicode encoding system.out.printf ("%s/n/n", sbuilder); -