int a[][] = {{1,2}, {3,4}, {5,6}};
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
System.out.print(" " + a[i][j]);
}
System.out.println();
}
a ─────► [0] ─────► {1, 2} ← 第 0 組 (a[0])
[1] ─────► {3, 4} ← 第 1 組 (a[1])
[2] ─────► {5, 6} ← 第 2 組 (a[2])
a.length = 3 表示有 3 個一維數組引用(3 組)。
a[i].length 表示第 i 組內元素個數(本例均為 2)。
| 外層 i | 內層 j | 訪問元素 | 輸出 |
|---|---|---|---|
| 0 | 0 | a[0][0] | 1 |
| 0 | 1 | a[0][1] | 2 |
| → 換行 | |||
| 1 | 0 | a[1][0] | 3 |
| 1 | 1 | a[1][1] | 4 |
| → 換行 | |||
| 2 | 0 | a[2][0] | 5 |
| 2 | 1 | a[2][1] | 6 |
| → 換行 |
i 和 a[i].length 可直觀觀察分組結構:System.out.println("第 " + i + " 組,長度 " + a[i].length);
for (int[] row : a) {
for (int val : row) {
System.out.print(val + " ");
}
System.out.println();
}
更簡潔、避免下標越界,推薦日常使用。
二維數組遍歷 = 遍歷行 + 遍歷列。理解「引用數組」與「數據數組」的兩層結構,是掌握多維數組操作的基石。