二维数组相当于一维数组的元素是一维数组
一、二维数组声明赋值初始化
动态初始化①
int[][] arr = new int[3][2];
定义了名称为arr的二维数组
二维数组中有3个一维数组
每一个一维数组中有2个元素
一维数组的名称分别为arr[0]
, arr[1]
, arr[2]
给第一个一维数组1脚标位赋值为78写法是:arr[0][1] = 78;
动态初始化②
int[][] arr = new int[3][];
定义了二维数组arr,arr中有3个一维数组
每个一维数组都是默认初始化值null
可以对3个一维数组分别进行初始化
arr[0] = new int[3]; arr[1] = new int[1]; arr[2] = new int[2];
静态初始化①
int[][] arr = new int[][]{{3,8,2},{2,7},{9,0,1,6}};
定义一个名称为arr的二维数组,二维数组中有三个一维数组
每一个一维数组中具体元素也都已初始化
第一个一维数组 arr[0] = {3,8,2};
第二个一维数组 arr[1] = {2,7};
第三个一维数组 arr[2] = {9,0,1,6};
第三个一维数组的长度表示方式:arr[2].length;
二、二维数组默认初始化值
外层数组:地址值或者null
内层数组:与一维数组情况相同(点击查看)
三、二维数组引用(索引)
int[][] arr = new int[][]{{2,1},{4,5},{0,3}};
System.out.println(arr[1][1]); //输出5
System.out.println(arr[1]); //输出arr[1][]这个一维数组首地址值
System.out.println(arr); //输出arr[][]这个二维数组首地址值
四、二维数组内存简析