Page 25 - การโปรแกรมคอมพิวเตอร์ขั้นสูง
P. 25
สตริงบิวเดอร์ 2-15
ตวั อย่างท ่ี 2.7 การใช้เมธอด length() ส�ำหรับแสดงขนาดข องข ้อมูลท ่ีจ ัดเก็บอ ยู่ภายในอ อบเจ็กต์ส ตริงบ ิวเดอร์
ex2-7.java
1 class ex2-7 {
2 public static void main(String args[ ]) {
3 StringBuilder strBu1 = new StringBuilder();
4 strBu1.append("welcome to...");
5 System.out.println(strBu1.capacity());
6 System.out.println(strBu1.length());
7 }
8}
ค�ำ อ ธบิ ายโปรแกรม
บรรทัดท ี่ 1-8 สร้างค ลาสชื่อ ex2-7
บรรทัดที่ 2-7 สร้างเมธอด main เพื่อเริ่มต้นการท ำ�งานของโปรแกรม
บรรทัดท ี่ 3 ส ร้างอ อบเจ็กต์จ ากคลาสสตริงบ ิวเดอ ร์ ที่มีความจุข นาด 16 ช่อง โดยยังไม่มีก ารก ำ�หนดค่า
เริ่มต ้นใด ๆ และป ระกาศต วั แปรแ บบอ า้ งอิง ชื่อ strBu1 เพื่อใชอ้ ้างองิ ไปย งั อ อบเจ็กตด์ ังก ล่าว
บรรทัดที่ 4 ใช้เมธอด append() เพื่อเพิ่มข้อมูลเข้าไปในอ อบเจ็กต์ strBu1 ด้วยค ่า “Welcome to...”
บรรทัดที่ 5 ใชเ้มธอด capacity() เพื่อแ สดงข นาดค วามจ ขุ อง ออ บเจ็กต์ strBu1 ซึ่งป กตจิ ะม ขี นาดค วามจุ
16 ช่อง
บรรทัดที่ 6 ใช้เมธอด length() เพื่อแ สดงข นาดข องข ้อมูลท ี่จ ัดเก็บอ ยู่ภ ายในอ อบเจ็กต์ strBu1 ซึ่งข นาด
ข้อมูลเท่ากับ 13
โดยปกติแล้วขนาด (length) ของข้อมูลจะมีขนาดน้อยกว่าหรือเท่ากับขนาดของความจุ (capacity) ของ
ออบเจ็กต์สตริงบิวเดอร์เสมอ ซึ่งขนาดของข้อมูลนี้เป็นขนาดที่เก็บข้อมูลจริงที่อยู่ในออบเจ็กต์สตริงบิวเดอร์ และ
ความจ ุข องออบเจ็กต์สตริงบ ิวเดอ ร์น ั้นจะเพิ่มข ึ้นโดยอ ัตโนมัติ เมื่อมีการใส่ข ้อมูลล งไปในอ อบเจ็กต์ดังกล่าว จึงท ำ�ให้
สามารถจ ัดเก็บข ้อมูลที่เพิ่มเติมเหล่านั้นได้
ผลก ารท �ำ งานข องโปรแกรม
ผลท ี่ได้จากการทำ�งานข องโปรแกรม ex2-7.java เป็นด ังนี้
16
13