Page 27 - การโปรแกรมคอมพิวเตอร์ขั้นสูง
P. 27

สตริงบิวเดอร์ 2-17

บรรทัดท​ ี่ 5 	  ใช้เ​มธอด capacity() แสดง​ขนาดค​ วาม​จุข​ อง​ ออ​ บ​เจ็กต์ strBu1 ซึ่ง​ขนาด​ความจ​ ุ​ปกติ คือ
บรรทัดท​ ี่ 6 	  16 ช่อง แม้ว่าข​ ้อมูลจ​ ะ​มีข​ นาด​น้อย​กว่า​ก็ตาม
บรรทัดท​ ี่ 7 	  ใช้​เมธอด length() แสดง​ขนาด​ของ​ข้อมูล​ที่​จัด​เก็บ​อยู่​ภาย​ใน​ออบ​เจ็กต์ strBu1 ซึ่ง​ขนาด​
บรรทัด​ที่ 8 	   ข้อมูลเ​ท่ากับ 4
บรรทัด​ที่ 9 	   ใช้เ​มธอด trimToSize() เพื่อล​ ดข​ นาดค​ วามจ​ ุข​ อง​ ออ​ บเ​จ็กต์ strBu1 ให้ม​ ีข​ นาดเ​ท่ากับข​ นาด​
                 ของข​ ้อมูลจ​ ริง​ที่จ​ ัดเ​ก็บอ​ ยู่​ภาย​ใน​ออบ​เจ็กต์ ซึ่งข​ นาด​ของ​ข้อมูลเ​ท่ากับ 4
                 ใช้​เมธอด capacity() เพื่อ​แสดง​ขนาด​ความ​จุ​ขอ​งอ​อบ​เจ็กต์ strBu1 ซึ่ง​เป็น​ขนาด​ความ​จุ​
                 ที่ทำ�การล​ ดข​ นาดค​ วาม​จุ​ลงใ​ห้เ​ท่ากับ​ขนาด​ของข​ ้อมูล​จริง​ที่​จัด​เก็บ​แล้ว
                 ใช้​เมธอด length() แสดง​ขนาด​ของ​ข้อมูล​ที่​จัด​เก็บ​อยู่​ภาย​ใน​ออบ​เจ็กต์ strBu1 ซึ่ง​ขนาด​
                 ของ​ข้อมูล​ยังค​ ง​เท่าเ​ดิมไ​ม่​ได้ม​ ี​การ​เปลี่ยนแปลง​ใด ๆ

ผลก​ ารท​ �ำ งาน​ของ​โปรแกรม
ผลท​ ี่​ได้​จาก​การ​ทำ�งานข​ องโ​ปรแกรม ex2-8.java เป็นด​ ังนี้

                     16
                     4
                     4
                     4

       						
       ข้อแ​ นะนำ� สำ�หรับก​ ารใ​ช้ง​ านส​ ตริงน​ ั้น หากส​ ตริงท​ ี่​จะส​ ร้างข​ ึ้นม​ าไ​ม่ค​ ่อยม​ ี​การแ​ ก้ไข เพิ่มเ​ติม เปลี่ยนแปลงอ​ ยู​่
บ่อย ๆ ขอแ​ นะนำ�​ให้ใ​ช้ค​ ลาส​สตริงจะด​ ี​กว่า​คลาส​สตริง​บิวเด​อร์ เพร​ าะอ​ อบ​เจ็กต์ท​ ี่​เกิดจ​ าก​การ​ใช้​คลาสสตริง​นั้น ภาษา​
จาวาส​ ามารถ​ปรับ​แต่งเ​พื่อเ​พิ่ม​ประสิทธิภาพก​ าร​ทำ�งานไ​ด้ง​ ่ายก​ ว่า

กจิ กรรม 2.1.1
       1. 	 จง​หาข​ นาด​ความ​จุ​ของ strBu1 จาก​ค�ำ ​ส่ัง​ตอ่ ​ไป​น้ี
            StringBuilder strBu1 = new StringBuilder("Hello Windows 8");
       2. 	 จากข​ อ้ 1 จงเ​ขยี นค​ �ำ ​สงั่ ภ​ าษาจ​ าวาเ​พอื่ ล​ ดข​ นาดค​ วามจ​ ข​ุ อง strBu1 ใหม​้ ข​ี นาดค​ วามจ​ เ​ุ ทา่ กบั ข​ นาดข​ อง​

ขอ้ มลู ​จรงิ ​ท่จี​ ดั เ​ก็บ
แนวต​ อบ​กจิ กรรม 2.1.1

       1. 	 จาก​ค�ำ ​สั่งข​ ้างต​ ้น ขนาด​ความจ​ ุข​ อง strBu1 มค​ี า่ เ​ท่ากับ 31
       2. 	 ค�ำ ​สงั่ ภ​ าษาจ​ าวาเ​พอื่ ล​ ดข​ นาดค​ วามจ​ ข​ุ อง strBu1 ใหม​้ ข​ี นาดค​ วามจ​ เ​ุ ทา่ กบั ข​ นาดข​ องข​ อ้ มลู จ​ รงิ ท​ จ​่ี ดั เกบ็
เขียน​คำ�​สั่งไ​ ด​้ดังนี้
   22   23   24   25   26   27   28   29   30   31   32