《java入门第一季》之二维数组

时间:2023-01-30 16:01:12
/*
格式2:
数据类型[][] 数组名 = new 数据类型[m][]; m:表示这个二维数组有多少个一维数组。
列数没有给出,可以动态的给。这一次是一个变化的列数。
*/
class Array2Demo2 {
public static void main(String[] args) {
//定义数组
int[][] arr = new int[3][]; System.out.println(arr); //[[I@175078b
//没有指定数组的二维位置是什么,此时没有地址
System.out.println(arr[0]); //null
System.out.println(arr[1]); //null
System.out.println(arr[2]); //null //动态的为每一个一维数组分配空间,此时就有了地址
arr[0] = new int[2];//第一个一维数组两个元素
arr[1] = new int[3];//第二个一维数组三个元素
arr[2] = new int[1];//第三个一维数组1个元素 System.out.println(arr[0]); //[I@42552c
System.out.println(arr[1]); //[I@e5bbd6
System.out.println(arr[2]); //[I@8ee016 System.out.println(arr[0][0]); //0
System.out.println(arr[0][1]); //0
//ArrayIndexOutOfBoundsException
//System.out.println(arr[0][2]); //异常错误(异常后面讲),第一个一位数组总共只有2个元素。arr[0][0],arr[0][1] arr[1][0] = 100;//赋值
arr[1][2] = 200;
System.out.println(arr[1][0]); //100
System.out.println(arr[1][2]); //200
}
}

图片理解如下:

《java入门第一季》之二维数组

/*
格式3:
基本格式:
数据类型[][] 数组名 = new 数据类型[][]{{元素1,元素2...},{元素1,元素2...},{元素1,元素2...}};
简化版格式:
数据类型[][] 数组名 = {{元素1,元素2...},{元素1,元素2...},{元素1,元素2...}}; 举例:
int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};
int[][] arr = {{1,2,3},{4,5},{6}};
*/
class Array2Demo3 {
public static void main(String[] args) {
//定义数组
int[][] arr = {{1,2,3},{4,5},{6}}; System.out.println(arr);
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]); System.out.println(arr[0][0]); //1
System.out.println(arr[1][0]); //4
System.out.println(arr[2][0]); //6 System.out.println(arr[0][1]); //2
System.out.println(arr[1][1]); //5
//越界
//System.out.println(arr[2][1]); //错误
}
}

图片理解如下:

《java入门第一季》之二维数组