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

本文详细介绍了在Java中如何使用动态方式创建二维数组,并通过示例代码展示了两种常见格式的具体应用。一种是先声明数组长度再动态分配每个子数组的空间,另一种则是直接初始化数组并赋予具体元素。
/*
	格式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
	}
}


图片理解如下:




/*
	格式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]); //错误
	}
}

图片理解如下:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值