สตริง: ประเภทสตริง
1. ตัวสร้าง
คัดลอกรหัสรหัส ดังต่อไปนี้:
สตริง (ไบต์ [ ] ไบต์): สร้างวัตถุสตริงจากอาร์เรย์ไบต์
สตริง (ค่าถ่าน [ ]): สร้างวัตถุสตริงจากอาร์เรย์ถ่าน
สตริง (ต้นฉบับต่อย): สร้างสำเนาต้นฉบับ นั่นคือ: คัดลอกต้นฉบับ
สตริง (บัฟเฟอร์ StringBuffer): สร้างวัตถุสตริงผ่านอาร์เรย์ StringBuffer
ตัวอย่างเช่น:
คัดลอกรหัสรหัส ดังต่อไปนี้:
ไบต์[] b = {'a','b','c','d','e','f','g','h','i','j'};
ถ่าน [] c = {'0','1','2','3','4','5','6','7','8','9'};
สตริง sb = สตริงใหม่ (b); //abcdefghij
สตริง sb_sub = สตริงใหม่ (b,3,2); //de
สตริง sc = สตริงใหม่ (c); //0123456789
สตริง sc_sub = สตริงใหม่ (c,3,2); //34
สตริง sb_copy = สตริงใหม่ (sb); //abcdefghij
System.out.println("sb:"+sb);
System.out.println("sb_sub:"+sb_sub);
System.out.println("sc:"+sc);
System.out.println("sc_sub:"+sc_sub);
System.out.println("sb_copy:"+sb_copy);
ผลลัพธ์ที่ได้: sb:abcdefghij
sb_sub:de
sc:0123456789
sc_sub:34
sb_copy:abcdefghij
2. วิธีการ :
หมายเหตุ: 1. วิธีการทั้งหมดเป็นแบบสาธารณะ
②. รูปแบบการเขียน: [ตัวแก้ไข] <ประเภทการส่งคืน><ชื่อวิธี ([รายการพารามิเตอร์])>
ตัวอย่างเช่น: int parseInt(String s) แบบคงที่
บ่งชี้ว่าวิธีการนี้ (parseInt) เป็นวิธีการเรียน (คงที่) ประเภทที่ส่งคืนคือ (int) และวิธีการต้องใช้ประเภทสตริง
1. char charAt(int index): รับอักขระบางตัวในสตริง โดยที่ดัชนีพารามิเตอร์อ้างอิงถึงเลขลำดับในสตริง หมายเลขลำดับของสตริงเริ่มต้นจาก 0 และไปที่ความยาว()-1
ตัวอย่างเช่น: String s = new String("abcdefghijklmnopqrstuvwxyz");
System.out.println("s.charAt(5): " + s.charAt(5) );
ผลลัพธ์คือ: s.charAt(5): f
2. int comparisonTo(String anotherString): เปรียบเทียบวัตถุ String ปัจจุบันกับ anotherString ความสัมพันธ์ที่เท่าเทียมกันจะส่งกลับค่า 0 เมื่อค่าไม่เท่ากัน การเปรียบเทียบจะเริ่มต้นจากอักขระตัวที่ 0 ของสตริงทั้งสอง และส่งกลับค่าความแตกต่างอักขระที่ไม่เท่ากันตัวแรก คืนความแตกต่างด้านความยาว
3. int comparisonTo(Object o): ถ้า o เป็นวัตถุ String ฟังก์ชันจะเหมือนกับ 2 มิฉะนั้น ClassCastException จะถูกโยนทิ้ง
ตัวอย่างเช่น: String s1 = new String("abcdefghijklmn");
สตริง s2 = สตริงใหม่ ("abcdefghij");
สตริง s3 = สตริงใหม่ ("abcdefghijalmn");
System.out.println("s1.compareTo(s2): " + s1.compareTo(s2) ); // ส่งกลับค่าความต่างของความยาว
System.out.println("s1.compareTo(s3): " + s1.compareTo(s3) ); // คืนผลลัพธ์ส่วนต่างของ 'k'-'a': s1.compareTo(s2): 4
s1.compareTo(s3): 10
4. String concat(String str): เชื่อมต่อวัตถุ String ด้วย str
5. บูลีน contentEquals (StringBuffer sb): เปรียบเทียบวัตถุ String กับวัตถุ StringBuffer sb
6. copyValueOf สตริงคงที่ (ข้อมูลถ่าน []):
7. static String copyValueOf(char[] data, int offset, int count): สองวิธีนี้แปลงอาร์เรย์ถ่านเป็น String ซึ่งคล้ายกับหนึ่งในตัวสร้าง
8. บูลีนendsWith(คำต่อท้ายสตริง): ไม่ว่าวัตถุสตริงจะลงท้ายด้วยคำต่อท้ายหรือไม่
ตัวอย่างเช่น: String s1 = new String("abcdefghij");
สตริง s2 = สตริงใหม่ ("ghij");
System.out.println("s1.endsWith(s2): " + s1.endsWith(s2) );
ผลลัพธ์คือ: s1.endsWith(s2): true
9. boolean เท่ากับ (Object anObject): เมื่อ anObject ไม่ว่างเปล่าและเหมือนกับอ็อบเจ็กต์ String ปัจจุบัน ให้คืนค่าจริง มิฉะนั้นจะคืนค่าเท็จ
10. ไบต์[] getBytes(): แปลงวัตถุ String ให้เป็นอาร์เรย์ไบต์
11. void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin): วิธีการนี้จะคัดลอกสตริงไปยังอาร์เรย์อักขระ หนึ่งในนั้นคือ srcBegin คือตำแหน่งเริ่มต้นของการคัดลอก srcEnd คือตำแหน่งสิ้นสุดของการคัดลอก ค่าสตริง dst คืออาร์เรย์อักขระเป้าหมาย และ dstBegin คือตำแหน่งเริ่มต้นการคัดลอกของอาร์เรย์อักขระเป้าหมาย
ตัวอย่างเช่น: ถ่าน[] s1 = {'ฉัน',' ','l','o','v','e',' ','h','e','r','!' } ;//s1=ฉันรักเธอ!
สตริง s2 = สตริงใหม่ ("คุณ!"); s2.getChars(0,3,s1,7); //s1=ฉันรักคุณ!
System.out.println(s1);
ผลลัพธ์คือ: ฉันรักคุณ!
12. int hashCode(): ส่งกลับรหัสตารางแฮชของตัวละครปัจจุบัน
13. int indexOf(int ch): ค้นหาเฉพาะตำแหน่งอักขระที่ตรงกันตัวแรกเท่านั้น
14. int indexOf(int ch, int fromIndex): ค้นหาตำแหน่งอักขระที่ตรงกันตัวแรกโดยเริ่มจาก fromIndex
15. int indexOf(String str): ค้นหาเฉพาะตำแหน่งสตริงที่ตรงกันตำแหน่งแรกเท่านั้น
16. int indexOf(String str, int fromIndex): ค้นหาตำแหน่งสตริงที่ตรงกันแรกที่เริ่มต้นจาก fromIndex
ตัวอย่างเช่น: String s = new String("เขียนครั้งเดียว, ทำงานได้ทุกที่!");
สตริง ss = สตริงใหม่ ("รัน");
System.out.println("s.indexOf('r'): " + s.indexOf('r') );
System.out.println("s.indexOf('r',2): " + s.indexOf('r',2) );
System.out.println("s.indexOf(ss): " + s.indexOf(ss) );
ผลลัพธ์คือ: s.indexOf('r'): 1
s.indexOf('r',2): 12
s.indexOf(ss): 12
17. int LastIndexOf(int ch)
18. int LastIndexOf(int ch, int fromIndex)
19. int LastIndexOf(สตริง str)
20. int LastIndexOf(String str, int fromIndex) สี่วิธีข้างต้นคล้ายกับ 13, 14, 15 และ 16 ความแตกต่างคือ: ค้นหาเนื้อหาที่ตรงกันล่าสุด
คลาสสาธารณะ CompareToDemo {
โมฆะคงสาธารณะหลัก (สตริง [] args) {
สตริง s1 = สตริงใหม่ ("acbdebfg");
System.out.println(s1.lastIndexOf((int)'b',7));
-
-
ผลการวิ่ง: 5
(พารามิเตอร์ของ fromIndex คือ 7 ซึ่งเป็นจำนวนหลักที่นับจากอักขระตัวสุดท้ายของ g ของสตริง acbdebfg เนื่องจากเริ่มจับคู่จากอักขระ c จึงค้นหาตำแหน่งสุดท้ายที่ตรงกับ b ดังนั้นผลลัพธ์จึงเป็น 5)
21. int length(): ส่งกลับความยาวสตริงปัจจุบัน
22. การแทนที่สตริง (char oldChar, char newChar): แทนที่ oldChar ตัวแรกในสตริงอักขระด้วย newChar
23. boolean beginningsWith(String prefix): ไม่ว่าวัตถุ String จะขึ้นต้นด้วยคำนำหน้าหรือไม่
24. boolean startWith(String prefix, int toffset): ไม่ว่าอ็อบเจ็กต์ String จะขึ้นต้นด้วยคำนำหน้าหรือไม่ โดยนับจากตำแหน่ง toffset
ตัวอย่างเช่น: String s = new String("เขียนครั้งเดียว, ทำงานได้ทุกที่!");
สตริง ss = สตริงใหม่ ("เขียน");
สตริง sss = สตริงใหม่ ("ครั้งเดียว");
System.out.println("s.startsWith(ss): " + s.startsWith(ss) );
System.out.println("s.startsWith(sss,6): " + s.startsWith(sss,6) );
ผลลัพธ์คือ: s.startsWith(ss): true
s.startsWith(sss,6): จริง
25. String substring(int beginningIndex): รับสตริงย่อยโดยเริ่มจากตำแหน่ง beginningIndex ไปจนถึงจุดสิ้นสุด
26.สตริงย่อย (int beginningIndex, int endIndex): นำสตริงย่อยเริ่มต้นจากตำแหน่ง beginningIndex ไปยังตำแหน่ง endIndex
27. char[ ] toCharArray(): แปลงวัตถุ String ให้เป็นอาร์เรย์ถ่าน
28. String toLowerCase(): แปลงสตริงเป็นตัวพิมพ์เล็ก
29. String toUpperCase(): แปลงสตริงเป็นตัวพิมพ์ใหญ่
ตัวอย่างเช่น: String s = new String("java.lang.Class String");
System.out.println("s.toUpperCase(): " + s.toUpperCase() );
System.out.println("s.toLowerCase(): " + s.toLowerCase() );
ผลลัพธ์คือ: s.toUpperCase(): JAVA.LANG.CLASS STRING
s.toLowerCase(): สตริง java.lang.class
30. ค่าสตริงคงที่ของ (ขบูลีน)
31. ค่าสตริงคงที่ (ถ่าน c)
32. ค่าสตริงคงที่ของ (ข้อมูลถ่าน [])
33. ค่าสตริงคงที่ของ (ข้อมูลถ่าน [], ออฟเซ็ต int, นับ int)
34. ค่าสตริงคงที่ของ (double d)
35. ค่าสตริงคงของ (ลอยฉ)
36. ค่าสตริงคงที่ (int i)
37. ค่าสตริงคงของ (l ยาว)
38. ค่าสตริงคงที่ (Object obj)
วิธีการข้างต้นใช้ในการแปลงประเภทต่างๆ ให้เป็นประเภทอักขระ Java เหล่านี้เป็นวิธีการเรียน
วิธีการทั่วไปของคลาส String ใน Java:
ถ่านสาธารณะ charAt (ดัชนี int)
ส่งกลับอักขระดัชนีในสตริง
ความยาว int สาธารณะ ()
ส่งกลับความยาวของสตริง
int สาธารณะindexOf (String str)
ส่งกลับตำแหน่งของ str ที่เกิดขึ้นครั้งแรกในสตริง
สาธารณะ int indexOf (สตริง str, int fromIndex)
ส่งกลับตำแหน่งของการเกิดขึ้นครั้งแรกของ str ในสตริงที่เริ่มต้นจาก fromIndex
บูลีนสาธารณะเท่ากับ IgnoreCase (สตริงอื่น)
เปรียบเทียบว่าสตริงเหมือนกับสตริงอื่นหรือไม่ (ไม่สนใจตัวพิมพ์)
แทนที่สตริงสาธารณะ (ถ่าน oldchar, ถ่าน newChar)
แทนที่อักขระ oldChar ด้วยอักขระ newChar ในสตริง
บูลีนสาธารณะ startWith (คำนำหน้าสตริง)
ตรวจสอบว่าสตริงขึ้นต้นด้วยสตริงคำนำหน้าหรือไม่
บูลีนสาธารณะสิ้นสุดด้วย (คำต่อท้ายสตริง)
ตรวจสอบว่าสตริงลงท้ายด้วยสตริงต่อท้ายหรือไม่
สตริงสาธารณะ toUpperCase()
ส่งกลับสตริงที่เป็นเวอร์ชันตัวพิมพ์ใหญ่ของสตริง
สตริงสาธารณะ toLowerCase()
ส่งกลับสตริงที่เป็นเวอร์ชันตัวพิมพ์เล็กของสตริง
สตริงย่อยสตริงสาธารณะ (int beginningIndex)
ส่งกลับสตริงย่อยจาก beginningIndex ไปยังจุดสิ้นสุดของสตริง
สตริงย่อยสาธารณะ (int beginningIndex, int endIndex)
ส่งกลับสตริงย่อยของสตริงที่เริ่มต้นจาก beginningIndex ถึงจุดสิ้นสุดของ endIndex
ตัดแต่งสตริงสาธารณะ ()
ส่งคืนสตริงหลังจากลบช่องว่างนำหน้าและต่อท้าย
สตริงสาธารณะ [] แยก (สตริง regex)
แยกสตริงตามตัวคั่นที่ระบุและส่งกลับอินสแตนซ์อาร์เรย์สตริงที่แยกออก:
คัดลอกรหัสรหัส ดังต่อไปนี้:
SplitDemo คลาสสาธารณะ{
โมฆะคงสาธารณะหลัก (สตริง [] args) {
วันที่ของสตริง = "2008/09/10";
สตริง [ ] dateAfterSplit= สตริงใหม่ [3];
dateAfterSplit=date.split("/"); //ใช้ "/" เป็นตัวคั่นเพื่อแยกสตริงวันที่และนำผลลัพธ์ออกเป็นสามสตริง
สำหรับ(int i=0;i<dateAfterSplit.length;i++)
System.out.print(dateAfterSplit[i]+" ");
-
-
ผลการรัน: 2008 09 10 // ผลลัพธ์คือ 3 อินสแตนซ์สตริงแยก:
TestString1.java:
รหัสโปรแกรม
คัดลอกรหัสรหัส ดังต่อไปนี้:
TestString1 คลาสสาธารณะ
-
โมฆะคงที่สาธารณะ main (String args []) {
สตริง s1 = "สวัสดีชาวโลก";
String s2 = "สวัสดีชาวโลก";
System.out.println(s1.charAt(1));
System.out.println(s2.ความยาว());
System.out.println(s1.indexOf("โลก"));
System.out.println(s2.indexOf("โลก"));
System.out.println(s1.เท่ากับ(s2));
System.out.println(s1.equalsIgnoreCase(s2));
String s = "ฉันเป็นโปรแกรมเมอร์ J2EE";
สตริง sr = s.replace('ฉัน','คุณ');
System.out.println(sr);
-
-
TestString2.java:
รหัสโปรแกรม
คัดลอกรหัสรหัส ดังต่อไปนี้:
TestString2 คลาสสาธารณะ
-
โมฆะคงที่สาธารณะ main (String args []) {
String s = "ยินดีต้อนรับสู่ Java World!";
สตริง s2 = " magci " ;
System.out.println(s.startsWith("ยินดีต้อนรับ"));
System.out.println(s.endsWith("โลก"));
สตริง sL = s.toLowerCase();
สตริง sU = s.toUpperCase();
System.out.println(sL);
System.out.println(sU);
สตริง subS = s.substring (11);
System.out.println(ย่อย);
สตริง s1NoSp = s2.trim();
System.out.println(s1NoSp);
-