“สวัสดี อามีโก้!”
"แต่ Bilaabo คุณได้กล่าวสวัสดีแล้ว"
“จริงเหรอ ฉันยังชอบเริ่มบทเรียนแต่ละบทด้วยประโยคนั้นอยู่เลย”
"วันนี้เราจะมาเรียนคลาส String แบบเจาะลึกกันครับ"
"แต่ฉันรู้ทุกอย่างเกี่ยวกับมันแล้ว ฉันรู้ด้วยซ้ำว่าคลาส String นั้นไม่เปลี่ยนรูป"
"คลาสสตริงมี 46 เมธอด คุณรู้กี่เมธอด"
“ไม่เกินสิบ จริงๆ น่าจะประมาณ 5 สูงสุด”
“งั้นก็ฟังนะ”
"ผู้สร้างของ Java สังเกตเห็นว่าสตริงส่วนใหญ่ในโปรแกรมไม่ได้ถูกแก้ไข แต่บางครั้งก็ถูกแก้ไขอยู่ดี มันน่ารำคาญมากเมื่อคุณสร้างสตริง บันทึกบางสิ่งที่สำคัญในนั้น ส่งต่อไปยังวิธีการของคนอื่น และได้รับการเปลี่ยนแปลง พวกเขาจึงตัดสินใจสร้างทั้งสตริงที่เปลี่ยนแปลงได้และเปลี่ยนแปลงไม่ได้"
"คลาส String สำหรับสตริงที่ไม่เปลี่ยนรูป และ คลาส StringBuilderสำหรับคลาสที่ไม่เปลี่ยนแปลง ออบเจกต์ของคลาสเหล่านี้สามารถแปลงเป็นประเภทอื่นได้อย่างง่ายดาย ในกรณีส่วนใหญ่ นักพัฒนา Java ต้องการเพียงแค่สตริง ซึ่งพิสูจน์ได้ว่าผู้สร้าง Java คิดถูก"
"ถ้าฉันต้องการสตริง ฉันจะใช้คลาสสตริง และถ้าฉันต้องการสตริงที่ไม่แน่นอน ฉันจะใช้คลาสสตริงบิลเดอร์ "
"ใช่ ที่จริงแล้วมีอีกคลาสหนึ่งชื่อ StringBuffer ซึ่งเป็นสำเนาของ StringBuilder ยกเว้นว่าเมธอดทั้งหมดของมันถูกประกาศเป็นsynchronizedเพื่อให้สามารถเข้าถึงออบเจกต์ได้จากเธรดต่างๆ ของโปรแกรม"
"แล้วตัวอย่างนี้ล่ะ สตริงไม่เปลี่ยนที่นี่เหรอ"
String s = "cat";
s = s + "-" + s;
"ไม่ มีวัตถุสตริงสองตัวที่นี่: «cat» และ «cat-cat» อันที่สองถูกสร้างขึ้นโดยใช้อันแรก แต่อ็อบเจกต์แรกไม่เปลี่ยนแปลง ในความเป็นจริง สิ่งต่าง ๆ น่าสนใจกว่ามากที่นี่ นี่คือรหัส คอมไพเลอร์สร้างขึ้นเมื่อรวบรวมตัวอย่างของคุณ:"
String s = "cat";
StrinsBuilder s2 = new StringBuilder(s);
s2.append("-");
s2.append(s);
s = s2.toString();
"ดังนั้น StringBuilder มักจะใช้เพื่อสร้างสตริงใหม่ แต่บางครั้งคอมไพเลอร์ก็ทำงานทั้งหมดให้คุณ แต่เวอร์ชันของคุณง่ายกว่า คุณว่าไหม"
"ใช่ มันยอดเยี่ยมมากที่ Java มีคอมไพเลอร์ขั้นสูงเช่นนี้"
"เอาล่ะ เรามาทำความรู้จักกับเมธอดของคลาส String กันดีกว่า:"
1) ฉันจะหาความยาวของสตริงได้อย่างไร
" เมธอด ความยาวส่งคืนความยาวของสตริง (จำนวนอักขระในนั้น)"
วิธีการ | ตัวอย่าง) |
---|---|
|
|
|
2) ฉันจะรับอักขระจากสตริงได้อย่างไร
" วิธี charAtส่งคืนอักขระจากสตริงตามดัชนี ดัชนีอักขระเริ่มต้นที่ 0
วิธีการ | ตัวอย่าง) |
---|---|
|
|
|
3) ฉันจะรับอักขระจากสตริงได้อย่างไร
ฉันจะรับอักขระจากสตริงได้อย่างไร
วิธีการ | ตัวอย่าง) |
---|---|
|
|
4) ฉันจะเปรียบเทียบสตริงได้อย่างไร
"เมธอดเท่ากับจะตรวจสอบว่าสตริงตรงกันหรือไม่ และ เมธอด equalsIgnoreCaseจะตรวจสอบว่าสตริงตรงกันหรือไม่เมื่อตัวพิมพ์ถูกละเว้น
วิธีการ | วิธีการ |
---|---|
|
|
|
|
5) ฉันจะทำให้ตัวอักษรทั้งหมดเป็นตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กได้อย่างไร
" เมธอด toUpperCaseส่งคืนสำเนาของสตริงที่มีตัวพิมพ์ใหญ่ทั้งหมด"
" เมธอด toLowerCaseจะส่งกลับสำเนาของสตริงที่มีตัวพิมพ์เล็กทั้งหมด"
วิธีการ | ตัวอย่าง) |
---|---|
|
|
ผลลัพธ์:
|
|
|
|
ผลลัพธ์:
|
6) ฉันจะลบช่องว่างที่จุดเริ่มต้นและจุดสิ้นสุดของสตริงได้อย่างไร
"วิธีการตัดแต่งจะส่งคืนสำเนาของสตริงที่ไม่มีอักขระช่องว่างที่จุดเริ่มต้นและจุดสิ้นสุด"
วิธีการ | ตัวอย่าง) |
---|---|
|
|
ผลลัพธ์:
|
GO TO FULL VERSION