เมนู

สรุปการจัดการอาร์เรย์ขั้นพื้นฐานในภาษา Java

สารบัญ

กำหนดค่าเริ่มต้นให้กับอาร์เรย์พร้อมกับการประกาศตัวแปร

คุณสามารถกำหนดค่าเริ่มต้นให้กับอาร์เรย์พร้อมกับการประกาศอาร์เรย์ได้ โดยเขียนดังนี้:

ตัวอย่างโค้ด

static void arraySample() { String[] s = {"apple", "orange", "banana"}; } System.out.println(s[1]);

ผลลัพธ์ที่ได้:

ส้มแมนดาริน


หาจำนวนองค์ประกอบในอาร์เรย์ ขนาด

หากต้องการทราบจำนวนองค์ประกอบในอาร์เรย์ ให้ใช้ `length` โปรดทราบว่า `length` เป็นฟิลด์ ไม่ใช่เมธอด

ตัวอย่างโค้ด

static void lengthSample() {
    String[] s1 = {"りんご", "みかん", "ぶどう"};
    String[] s2 = {};
    System.out.println(s1.length);
    System.out.println(s2.length);
}

ผลลัพธ์ที่ได้:

3
0

คัดลอกอาร์เรย์ – โคลน

หากคุณต้องการสร้างอาร์เรย์ที่เหมือนกับอาร์เรย์อื่นทุกประการ คำสั่ง `clone` จะมีประโยชน์

ตัวอย่างโค้ด

static void cloneSample() { String[] s1 = {"apple", "orange", "grape"}; String[] s2 = s1.clone(); System.out.println(s1[0] + ' ' + s1[1] + ' ' + s1[2]); System.out.println(s2[0] + ' ' + s2[1] + ' ' + s2[2]); }

ผลลัพธ์ที่ได้:

แอปเปิ้ล ส้ม องุ่น แอปเปิ้ล ส้ม องุ่น

คัดลอกอาร์เรย์ – ระบบ.อาร์เรย์คัดลอก

อาร์เรย์ใน Java จะมีขนาดคงที่ตามค่าเริ่มต้น หากต้องการเพิ่มขนาดของอาร์เรย์หลังจากสร้างแล้ว คุณต้องใช้เมธอด System.arraycopy

`arraycopy` ใช้สำหรับคัดลอกอาร์เรย์ เช่นเดียวกับ `clone` แต่ช่วยให้สามารถกำหนดค่าได้อย่างละเอียดกว่า `clone`

arraycopy(Object src, int srcPos, Object dest, int destPos, int length) src... อาร์เรย์ที่จะคัดลอก srcPos... ตำแหน่งเริ่มต้นที่จะคัดลอกจากอาร์เรย์ต้นทาง (src) dest... อาร์เรย์ปลายทาง destPos... ตำแหน่งเริ่มต้นที่จะคัดลอกจากอาร์เรย์ปลายทาง (dest) length... จำนวนองค์ประกอบที่จะคัดลอก

ตัวอย่างโค้ด

static void arraycopySample() { String[] s1 = {"apple", "orange", "grape"}; String[] s2 = new String[5]; System.arraycopy(s1, 0, s2, 0, 3); s2[3] = "banana"; s2[4] = "cherry"; System.out.println(s1[0] + " " + s1[1] + " " + s1[2]); System.out.println(s2[0] + " " + s2[1] + " " + s2[2] + " " + s2[3] + " " + s2[4]); }

ผลลัพธ์ที่ได้:

แอปเปิ้ล ส้ม องุ่น แอปเปิ้ล ส้ม องุ่น กล้วย เชอร์รี่

ArrayCopy ยังมีประโยชน์เมื่อต้องการรวมอาร์เรย์เข้าด้วยกันอีกด้วย

ตัวอย่างโค้ด

static void joinArraySample() {
    String[] s1 = {"りんご", "みかん", "ぶどう"};
    String[] s2 = {"ばなな", "さくらんぼ", "もも"};
    int rLen = s1.length + s2.length;
    String[] rStr = new String[rLen]; //s1とs2両方の長さ分の配列を初期化
    System.arraycopy(s1, 0, rStr, 0, s1.length);
    System.arraycopy(s2, 0, rStr, s1.length, s2.length); //コピー先配列の開始位置の設定がポイント
    System.out.println(rStr[0] + " " + rStr[1] + " " + rStr[2] + " " + rStr[3] + " " + rStr[4] + " " + rStr[5]);
}

ผลลัพธ์ที่ได้:

แอปเปิ้ล ส้ม องุ่น กล้วย เชอร์รี่ พีช

สร้างอาร์เรย์หลายมิติ

การสร้างอาร์เรย์ซ้อนอาร์เรย์อื่น จะทำให้ได้อาร์เรย์หลายมิติ ซึ่งมีประโยชน์เมื่อต้องการจัดเก็บข้อมูลในรูปแบบตาราง เป็นต้น

ตัวอย่างโค้ด

static void twoDArraySample() { int[] a1 = {38, 84, 98}; int[] a2 = {32, 11, 56}; int[] a3 = {82, 77, 8}; int[][] twoDArray = {a1, a2, a3}; for (int[] a : twoDArray) { for (int score : a) { System.out.print(score + " "); } System.out.println(""); } }

ผลลัพธ์ที่ได้:

38 84 98 
32 11 56 
82 77 8 
  • URL をkoピーしました!
สารบัญ