อาร์เรย์(array)คือกลุ่มของข้อมูลที่เรียงลาดับกัน มีจานวนแน่นอนซึ่ง
ข้อมูลจะเป็นประเภทดียวกัน ข้อมูลแต่ละตัวของอาร์เรย์จะเรียกว่า อีลีเมนต์
(Element) และข้อมูลแต่ละอีลีเมนต์จะมีหมายเลขเพื่อใช้ในการ
อ้างอิงถึงเรียกตัวเลขนี้ ว่า เลขดัชนี (Index) จะเป็นตัวแปรที่ชื่อ
เหมือนกัน แต่จะแตกต่างกันตรงหมายเลข
มีลักษณะเป็นข้อมูล 1 ชุด เรียงลาดับกันเป็นแถวในแนวนอน
การกาหนดค่าเริ่มต้นให้กับอาร์เรย์ 1 มิติ
สามารถกาหนดค่าเริ่มต้นให้กับ array ได้ตั้งแต่ตอนประกาศตัวแปรค่าที่
กาหนดต้องอยู่ในเครื่องหมาย { } และถ้ามีมากกว่า 1 ค่า ต้องแยกจากกัน
ด้วยเครื่องหมาย ,(comma)
ถ้าในตอนประกาศตัวแปรอาร์เรย์ไม่กาหนดค่าเริ่มต้นให้กับมันแล้ว
ค่าที่อยู่ในตัวแปรจะเป็นค่าที่ค้างอยู่ในหน่วยความจาช่วงที่เราจองไว้เป็น
อาร์เรย์นั้น
ถ้ากาหนดค่าเริ่มต้นตั้งแต่ตอนประกาศตัวแปรแต่กาหนดไม่ครบ ใน
กรณีที่เป็นอาร์เรย์แบบตัวเลขทั้งจานวนเต็มและจานวนจริง ค่าที่เหลือจะ
ถูกกาหนดเป็น 0 โดยอัตโนมัติ
Element ของอาร์เรย์ลาดับแรกจะเป็น 0 เสมอ ลาดับของ Element ของ
อาร์เรย์โดยส่วนมากจะเป็นค่าตัวเลขจานวนเต็ม ตัวอย่างเช่น ใช้อาร์เรย์scores
เราจะเข้าถึง Element แรกได้
การส่ง Array เข้าไปใน Method จะเป็นการส่งตาแหน่งของ Array( Reference )
เข้าไปให้กับ Parameter ของ Method
อาร์เรย์สามารถเก็บ reference ของ Object ได้โดยกาหนดให้อาร์เรย์
เป็น Class นั้นๆ ในตอนประกาศอาร์เรย์
อาร์เรย์2 มิติ เป็นตัวแปรชุดที่มีการจัดการข้อมูล Row (แถว) , Column
(หลัก) ซึ่งอยู่ในรูปแบบตาราง ที่มีแสดงตาแหน่ง 2 ตัว
อาร์เรย์2 มิติ คือ array of array กล่าวคือ array 2 มิติ เป็น array ของ array 1
มิติ นั่นเอง
การกาหนดค่าเริ่มต้นให้กับอาร์เรย์2 มิติ
ตัวอย่างรูปแบบที่ 1 intnum[2][3] = {11,12,13,21,22,23};
ตัวอย่างรูปแบบที่ 2 intnum[2][3] = {{11,12,13},{21,22,23}};
ตัวอย่างรูปแบบที่ 3 intnum[3][3] = {{11,12,13},{21,22,23}};
ข้อสังเกต อาร์เรย์ขนาด 2 มิติขึ้นไป จะไม่ระบุขนาดได้เฉพาะมิติที่ 1 เท่านั้น
ส่วนมิติอื่นๆ ต้องมีการระบุขนาดด้วยทุกครั้ง
ArrayListเป็นคลาสที่รวบรวมคาสั่งพิเศษที่ช่วยสั่งงานอาร์เรย์ต่างจาก
array ปกติที่จะเป็นการกาหนดขนาดของตัวแปรอาร์เรย์คงที่ แต่ ArrayList
จะสามารถแก้ไขขนาดได้เวลาใส่ข้อมูลเข้าไปก็ไม่ต้องกาหนดขนาด
เฉพาะไว้ก่อน
methodที่ใช้ในการจัดการข้อมูลดังนี้
1.add(ตาแหน่งอาร์เรย์,ค่าข้อมูลในอาร์เรย์)
2.remove(ตาแหน่งอาร์เรย์)
3.get(ตาแหน่งอาร์เรย์)
4.indexOf(ข้อมูลอาร์เรย์)
5.size(ชื่ออาร์เรย์.)
สตริงเป็นออปเจค (Object) ที่สืบทอดคุณสมบัติมาจากคลาสสตริง
(Class String) ถ้าต้องการสร้างออปเจคจากคลาสสตริง
การเก็บข้อมูลของสตริงนั้น จะมีการเก็บข้อมูลอยู่ 2 ส่วน ส่วนแรกจะเป็น
ข้อมูลตัวอักษรโดยเก็บเรียงกันไป แบะส่วนที่ 2 จะเก็บจุดสิ้นสุดของสตริง ซึ่ง
จุสิ้นสุดของสตริงจะใช้ Null Characterหรือ ‘0’
การเปรียบเทียบ String
โดยใช้equals ซึ่ง เป็น method ตัวนึงที่อยู่ใน String Class โดยจะทาหน้าที่
เปรียบเทียบ String 2 ชุดว่ามีสมาชิกหรือข้อความที่เหมือนกันหรือไม่ มี
รูปแบบการใช้งาน
เป็น class หนึ่งที่ทางานกับ String แต่มีความยืดหยุ่นและใช้งานได้หลากหลาย
กว่า String Class ทั้งนี้ StringBuffer Class จะมี Constructor ให้เลือกใช้ได้3
Constructor ได้แก่
- StringBuffer() ใช้ในการสร้าง StringBufferที่ไม่มีข้อมูลใดๆ และมีความยาว
สูงสุด 16 ตัวอักษร
- StringBuffer(int length) ใช้ในการสร้าง StringBufferที่ไม่มีข้อมูลใดๆ แต่
ความยาวจะขึ้นอยู่กับค่าของ length ที่ส่งมาให้
- StringBuffer(String str) ใช้ในการสร้าง StringBufferที่มีข้อมูลตาม Argument
“str” ที่ส่งมา โดยความยาวก็จะขึ้นอยู่กับความยาวของstrเท่านั้น
มีคุณสมบัติคล้ายๆกับ StringBufferแต่ต่างกันตรงที่ StringBuilderไม่เป็น
Thread Save จึงทาให้ทางานได้เร็วกว่า StringBufferการเรียกใช้งาน ก็เรียกใช้
งานได้เหมือนกัน
บทที่5

บทที่5

  • 2.
    อาร์เรย์(array)คือกลุ่มของข้อมูลที่เรียงลาดับกัน มีจานวนแน่นอนซึ่ง ข้อมูลจะเป็นประเภทดียวกัน ข้อมูลแต่ละตัวของอาร์เรย์จะเรียกว่าอีลีเมนต์ (Element) และข้อมูลแต่ละอีลีเมนต์จะมีหมายเลขเพื่อใช้ในการ อ้างอิงถึงเรียกตัวเลขนี้ ว่า เลขดัชนี (Index) จะเป็นตัวแปรที่ชื่อ เหมือนกัน แต่จะแตกต่างกันตรงหมายเลข
  • 3.
    มีลักษณะเป็นข้อมูล 1 ชุดเรียงลาดับกันเป็นแถวในแนวนอน การกาหนดค่าเริ่มต้นให้กับอาร์เรย์ 1 มิติ สามารถกาหนดค่าเริ่มต้นให้กับ array ได้ตั้งแต่ตอนประกาศตัวแปรค่าที่ กาหนดต้องอยู่ในเครื่องหมาย { } และถ้ามีมากกว่า 1 ค่า ต้องแยกจากกัน ด้วยเครื่องหมาย ,(comma) ถ้าในตอนประกาศตัวแปรอาร์เรย์ไม่กาหนดค่าเริ่มต้นให้กับมันแล้ว ค่าที่อยู่ในตัวแปรจะเป็นค่าที่ค้างอยู่ในหน่วยความจาช่วงที่เราจองไว้เป็น อาร์เรย์นั้น ถ้ากาหนดค่าเริ่มต้นตั้งแต่ตอนประกาศตัวแปรแต่กาหนดไม่ครบ ใน กรณีที่เป็นอาร์เรย์แบบตัวเลขทั้งจานวนเต็มและจานวนจริง ค่าที่เหลือจะ ถูกกาหนดเป็น 0 โดยอัตโนมัติ
  • 4.
    Element ของอาร์เรย์ลาดับแรกจะเป็น 0เสมอ ลาดับของ Element ของ อาร์เรย์โดยส่วนมากจะเป็นค่าตัวเลขจานวนเต็ม ตัวอย่างเช่น ใช้อาร์เรย์scores เราจะเข้าถึง Element แรกได้ การส่ง Array เข้าไปใน Method จะเป็นการส่งตาแหน่งของ Array( Reference ) เข้าไปให้กับ Parameter ของ Method อาร์เรย์สามารถเก็บ reference ของ Object ได้โดยกาหนดให้อาร์เรย์ เป็น Class นั้นๆ ในตอนประกาศอาร์เรย์
  • 5.
    อาร์เรย์2 มิติ เป็นตัวแปรชุดที่มีการจัดการข้อมูลRow (แถว) , Column (หลัก) ซึ่งอยู่ในรูปแบบตาราง ที่มีแสดงตาแหน่ง 2 ตัว อาร์เรย์2 มิติ คือ array of array กล่าวคือ array 2 มิติ เป็น array ของ array 1 มิติ นั่นเอง การกาหนดค่าเริ่มต้นให้กับอาร์เรย์2 มิติ ตัวอย่างรูปแบบที่ 1 intnum[2][3] = {11,12,13,21,22,23}; ตัวอย่างรูปแบบที่ 2 intnum[2][3] = {{11,12,13},{21,22,23}}; ตัวอย่างรูปแบบที่ 3 intnum[3][3] = {{11,12,13},{21,22,23}}; ข้อสังเกต อาร์เรย์ขนาด 2 มิติขึ้นไป จะไม่ระบุขนาดได้เฉพาะมิติที่ 1 เท่านั้น ส่วนมิติอื่นๆ ต้องมีการระบุขนาดด้วยทุกครั้ง
  • 7.
    ArrayListเป็นคลาสที่รวบรวมคาสั่งพิเศษที่ช่วยสั่งงานอาร์เรย์ต่างจาก array ปกติที่จะเป็นการกาหนดขนาดของตัวแปรอาร์เรย์คงที่ แต่ArrayList จะสามารถแก้ไขขนาดได้เวลาใส่ข้อมูลเข้าไปก็ไม่ต้องกาหนดขนาด เฉพาะไว้ก่อน methodที่ใช้ในการจัดการข้อมูลดังนี้ 1.add(ตาแหน่งอาร์เรย์,ค่าข้อมูลในอาร์เรย์) 2.remove(ตาแหน่งอาร์เรย์) 3.get(ตาแหน่งอาร์เรย์) 4.indexOf(ข้อมูลอาร์เรย์) 5.size(ชื่ออาร์เรย์.)
  • 8.
    สตริงเป็นออปเจค (Object) ที่สืบทอดคุณสมบัติมาจากคลาสสตริง (ClassString) ถ้าต้องการสร้างออปเจคจากคลาสสตริง การเก็บข้อมูลของสตริงนั้น จะมีการเก็บข้อมูลอยู่ 2 ส่วน ส่วนแรกจะเป็น ข้อมูลตัวอักษรโดยเก็บเรียงกันไป แบะส่วนที่ 2 จะเก็บจุดสิ้นสุดของสตริง ซึ่ง จุสิ้นสุดของสตริงจะใช้ Null Characterหรือ ‘0’ การเปรียบเทียบ String โดยใช้equals ซึ่ง เป็น method ตัวนึงที่อยู่ใน String Class โดยจะทาหน้าที่ เปรียบเทียบ String 2 ชุดว่ามีสมาชิกหรือข้อความที่เหมือนกันหรือไม่ มี รูปแบบการใช้งาน
  • 9.
    เป็น class หนึ่งที่ทางานกับString แต่มีความยืดหยุ่นและใช้งานได้หลากหลาย กว่า String Class ทั้งนี้ StringBuffer Class จะมี Constructor ให้เลือกใช้ได้3 Constructor ได้แก่ - StringBuffer() ใช้ในการสร้าง StringBufferที่ไม่มีข้อมูลใดๆ และมีความยาว สูงสุด 16 ตัวอักษร - StringBuffer(int length) ใช้ในการสร้าง StringBufferที่ไม่มีข้อมูลใดๆ แต่ ความยาวจะขึ้นอยู่กับค่าของ length ที่ส่งมาให้ - StringBuffer(String str) ใช้ในการสร้าง StringBufferที่มีข้อมูลตาม Argument “str” ที่ส่งมา โดยความยาวก็จะขึ้นอยู่กับความยาวของstrเท่านั้น
  • 10.
    มีคุณสมบัติคล้ายๆกับ StringBufferแต่ต่างกันตรงที่ StringBuilderไม่เป็น ThreadSave จึงทาให้ทางานได้เร็วกว่า StringBufferการเรียกใช้งาน ก็เรียกใช้ งานได้เหมือนกัน