二维数组的使用
public class test2 {
public static void main(String[] args) {
//静态初始化
int[][] Arr = new int[][]{{1,2,3,},{4,5},{7,8,9}};
//动态初始化,有两种动态初始化方式
int[][] Arr1 = new int[3][2];
int[][] Arr2 = new int[3][];
//调用数组指定位置的元素
System.out.println(Arr[0][1]);//2
Arr3[1] = new int[4];
}
}
Arr3[1] = new int[4];
这句代码表示另外创建一个长度为4的数组
把这个数组的首地址赋值给Arr3数组的第一个元素
即
获取数组的长度
System.out.println(Arr.length);//结果是:3
System.out.println(Arr[1].length);//结果是:2
遍历数组
for (int i = 0; i < Arr.length; i++) {
for (int j = 0; j < Arr[i].length; j++) {
System.out.println(Arr[i][j]+" ");
}
}
数组元素的默认初始化值
public class test3 {
public static void main(String[] args) {
int[][] arr1 = new int[7][3];
System.out.println(arr1[0]);//输出的是一个地址值:存在arr[0]中数组的首地址
System.out.println(arr1[0][0]);//0
String[][] arr2 = new String[7][3];
System.out.println(arr2[0]);//输出的是一个地址值:存在arr[0]中数组的首地址
System.out.println(arr2[0][0]);//null
float[][] arr3 = new float[7][3];
System.out.println(arr3[0]);//输出的是一个地址值:存在arr[0]中数组的首地址
System.out.println(arr3[0][0]);//0.0
double[][] arr4 = new double[7][];
//“列”元素没有初始化
System.out.println(arr4[0]);//null
System.out.println(arr4[0][0]);//空指针异常
}
}