1. 程式人生 > 實用技巧 >10-二維陣列

10-二維陣列

1.如何理解二維陣列?
陣列屬於引用資料型別
陣列的元素也可以是引用資料型別
一個一維陣列A的元素如果還是一個一維陣列型別的,則,此陣列A稱為二維陣列。


2.二維陣列的宣告與初始化

 1 //正確的方式:
 2 int[] arr = new int[]{1,2,3};//一維陣列
 3 
 4 
 5 //靜態初始化
 6 int[][] arr1 = new int[][]{{1,2,3},{4,5},{6,7,8}};
 7 //動態初始化1
 8 String[][] arr2 = new String[3][2];
 9 //動態初始化2
10 String[][] arr3 = new String[3][];
11 //也是正確的寫法: 12 int[] arr4[] = new int[][]{{1,2,3},{4,5,9,10},{6,7,8}}; 13 int[] arr5[] = {{1,2,3},{4,5},{6,7,8}};//型別推斷 14 15 16 //錯誤的方式: 17 // String[][] arr4 = new String[][4]; 18 // String[4][3] arr5 = new String[][]; 19 // int[][] arr6 = new int[4][3]{{1,2,3},{4,5},{6,7,8}};

3.如何呼叫二維陣列元素:

1 System.out.println(arr1[0][1]);//
2 2 System.out.println(arr2[1][1]);//null 3 4 arr3[1] = new String[4]; 5 System.out.println(arr3[1][0]); 6 System.out.println(arr3[0]);//

4.二維陣列的屬性:

1 System.out.println(arr4.length);//3
2 System.out.println(arr4[0].length);//3
3 System.out.println(arr4[1].length);//4

5.遍歷二維陣列元素

1 for(int i = 0;i < arr4.length;i++){
2 for(int j = 0;j < arr4[i].length;j++){ 3 System.out.print(arr4[i][j] + " "); 4 } 5 System.out.println(); 6 }

6.二維陣列元素的預設初始化值
規定:二維陣列分為外層陣列的元素,內層陣列的元素
int[][] arr = new int[4][3];
外層元素:arr[0],arr[1]等
內層元素:arr[0][0],arr[1][2]等

陣列元素的預設初始化值
  針對於初始化方式一:比如:int[][] arr = new int[4][3];
            外層元素的初始化值為:地址值
            內層元素的初始化值為:與一維陣列初始化情況相同

  針對於初始化方式二:比如:int[][] arr = new int[4][];
            外層元素的初始化值為:null
            內層元素的初始化值為:不能呼叫,否則報錯。