回覆列表
  • 1 # 使用者1015193684327

    java裡的二維陣列說白了就是個元素為陣列的一維陣列(list of list)。換句話說,就是一個數組裡儲存的每個元素都是一個數組的控制代碼。第一個括號裡的數字是用於訪問這個一維陣列中的元素的下標,第二個括號是用於訪問這個指定元素(此處為陣列)中的元素的下標。說著有點繞。

    舉個例子,宣告一個二維陣列

    int[][] a = new int[][]{

    {0,1,2},

    {3,4,5},

    {6,7,8}

    }

    當做一維陣列來理解,陣列a的第0個元素指向陣列{0,1,2},第1個元素指向{3,4,5},第2個元素指向{6,7,8}。

    所以透過a[0]能訪問陣列{0,1,2},透過a[0][2]能訪問到陣列{0,1,2}的第2個元素,即2。注意前者訪問的是控制代碼,後者訪問的才是具體元素。

    宣告二維陣列的時候可以這樣:

    int[][] a = new int[3][],表明a中會儲存3個數組,預設情況下a會是{null, null, null}

    但不能像這樣:

    int[][] a = new int[][3],在沒有指定a的長度下先指定了其內部陣列的長度,編譯器會報錯

    如果是這樣:

    int[][] a = new int[3][3],則沒有問題,預設情況下a會是{{0,0,0},{0,0,0},{0,0,0}}。

  • 中秋節和大豐收的關聯?
  • 職場中學歷重要還是能力重要?為啥?