Page 23 - การโปรแกรมคอมพิวเตอร์ขั้นสูง
P. 23
สตริงบิวเดอร์ 2-13
คำ�อธบิ ายโปรแกรม
บรรทัดท ี่ 1-8 สร้างค ลาสชื่อ ex2-5
บรรทัดที่ 2-7 สร้างเมธอด main เพื่อเริ่มต้นการทำ�งานข องโปรแกรม
บรรทัดที่ 3 สร้างอ อบเจ็กต์จากค ลาสสตริงบ ิวเดอ ร์ โดยกำ�หนดค ่าเริ่มต ้นเท่ากับ "Welcome to Java"
และป ระกาศต ัวแปรแบบอ ้างอิง ชื่อ strBu1 เพื่อใช้ส ำ�หรับอ้างอิงไปย ังอ อบเจ็กต์ดังกล่าว
บรรทัดที่ 4 แสดงค ่าที่เก็บอยู่ในอ อบเจ็กต์ strBu1 ออกท างจอภาพ
บรรทัดท ี่ 5 ใชเ้ มธอด replace () เพือ่ แ ทนทขี่ อ้ มลู “HTML5” เขา้ ไปในอ อบเจก็ ต์ strBu1 ณ ต�ำ แหนง่ ที่ 11
ของข อ้ มลู เดมิ ไปจ นถงึ ต �ำ แหนง่ ที่ 14 (ต�ำ แหนง่ ที่ 15 ลบ 1) ซึง่ ต �ำ แหนง่ ข องข อ้ มลู เริม่ ต น้ ท ศี่ นู ย์
บรรทัดท ี่ 6 แสดงค ่าที่เก็บอ ยู่ในอ อบเจ็กต์ strBu1 ออกทางจ อภาพ
ผลการท�ำ งานของโปรแกรม
ผลท ี่ได้จากก ารท ำ�งานของโปรแกรม ex2-5.java เป็นดังนี้
Welcome to Java
Welcome to HTML5
3. การตรวจส อบคณุ สมบตั ิของคลาสสตริงบ ิวเดอ ร์
จากเมธอดในหัวข้อที่ผ่านมา นอกจากจะส ามารถเพิ่มเติม แก้ไขเปลี่ยนแปลงข ้อมูลท ี่อยู่ภายในอ อบเจ็กต์ท ี่
สร้างมาจากคลาสสตริงบิวเดอร์ได้แล้ว ยังมีเมธอดอีกบางส่วนที่สร้างขึ้นมาสำ�หรับตรวจสอบคุณสมบัติหรือบริหาร
จัดการเกี่ยวกับออบเจ็กต์ท ี่ส ร้างมาจ ากคลาสสตริงบิวเดอ ร์ด ้วยเช่นกัน โดยม ีเมธอดท ี่น่าส นใจด ังนี้
3.1 เมธอด capacity() ใช้สำ�หรับต รวจส อบข นาดค วามจ ุ (capacity) ของ ออ บเจ็กต์สตริงบ ิวเดอร์ ซึ่งเป็น
ขนาดท ี่สามารถจ ัดเก็บข ้อมูลได้ โดยที่ย ังไม่ได้มีการเพิ่มขนาดค วามจ ุนี้ขึ้นอ ีก ณ ขณะท ี่ทำ�การต รวจส อบ ปกติแ ล้ว
หากขนาดไม่พอก ็จ ะเพิ่มข นาดให้อัตโนมัติ โดยมีรูปแบบดังต ่อไปนี้
int obj.capacity()
โดย
int คือ ผลลัพธ์ท ี่เกิดจากการต รวจสอบข นาดค วามจุ ซึ่งจ ะส ่งค่ากลับม าเป็นเลขจำ�นวนเต็ม
obj คือ ออบเจ็กต์ท ี่เกิดจากคลาสส ตริงบ ิวเดอ ร์