首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Java 二維數組遍歷原理圖解:分組與組內元素雙重循環

     編輯:程式設計疑難解答

代碼示例

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訪問元素輸出
00a[0][0]1
01a[0][1]2
→ 換行
10a[1][0]3
11a[1][1]4
→ 換行
20a[2][0]5
21a[2][1]6
→ 換行

關鍵理解點

  1. 二維數組本質是「一維數組的數組」,每行長度可不一致(鋸齒數組);
  2. 外層循環遍歷「行引用」,內層循環遍歷「行內元素」;
  3. 打印 i 和 a[i].length 可直觀觀察分組結構:
    System.out.println("第 " + i + " 組,長度 " + a[i].length);
    

進階:增強 for 循環寫法

for (int[] row : a) {
    for (int val : row) {
        System.out.print(val + " ");
    }
    System.out.println();
}

更簡潔、避免下標越界,推薦日常使用。

總結

二維數組遍歷 = 遍歷行 + 遍歷列。理解「引用數組」與「數據數組」的兩層結構,是掌握多維數組操作的基石。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved