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

Java 二維陣列初始化語法:a[0] 代表第一列、a[0][0] 代表第一列第一欄

     編輯:程式設計疑難解答

延續上一題,用具體初始化語法釐清 a[0]、a[0][0] 的實際內容。

程式碼範例

int[][] a = { {1, 2}, {3, 4} };  // 2 列 2 欄的二維陣列

記憶體對應圖

a ──► [ 列0參考 ] ──► [ 1, 2 ]  (int[])
      [ 列1參考 ] ──► [ 3, 4 ]  (int[])

索引對應表

運算式值 / 參考型別說明
a二維陣列參考int[][]整個陣列
a[0]{1, 2} 的參考int[]第一列(Row 0)
a[0][0]1int第一列第一欄
a[1]{3, 4} 的參考int[]第二列
a[1][1]4int第二列第二欄

兩種思考視角

  1. 整體視角:a[0] 是站在「整個二維陣列」取出第 0 列 → 得到一維陣列。
  2. 逐層視角:a[0][0] 先取第 0 列得到一維陣列,再取該一維陣列第 0 個元素 → 得到純量。

驗證小程式

public class Test {
    public static void main(String[] args) {
        int[][] a = { {1, 2}, {3, 4} };
        System.out.println("a[0]      = " + Arrays.toString(a[0]));      // [1, 2]
        System.out.println("a[0][0]   = " + a[0][0]);                    // 1
        System.out.println("a[0].length = " + a[0].length);              // 2
    }
}

輸出證明:a[0] 是長度 2 的 int[],a[0][0] 是純量 1。搞懂這層關係,二維陣列遍歷、傳參、複製就不會寫錯索引。

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