多维数组的理解

多维数组,其实只是数组元素依然是数组的1维数组:

2维数组是数组元素为1维数组的数组,

3维数组是数组元素为2维数组的数组,

……

N维数组是数组元素为N-1维数组的数组

 

java允许将多维数组当做1维数组处理。初始化多维数组时,可以先只初始化最左边的维数,此时该数组的每个元素都相当于一个数组引用变量,这些数组元素还需要进一步初始化。

 

public class ArrayDemo2 {
	public static void main(String[] args) {
		int[][] a ;
		a = new int[4][];
		for(int i = 0 ; i < a.length ; i ++){
			System.out.println(a[i]);
		}
		//初始化a数组的第一个元素
		a[0] = new int[2];
		//初始化a[0]数组的第一个元素
		a[0][0] = 1 ;
		for(int i = 0 ; i < a[0].length ; i ++){
			System.out.println(a[0][i]);
		}
	}
}
/*out:
null
null
null
null
1
0*/

 

代码运行结果分析:

二维数组a[4][]被当成一维数组处理,只是每个数组元素都是null,故输出结果为4个null。在二维数组a的一个元素a[0]中,开辟长度为2的一维数组,给a[0][0]赋1,a[0][1]又系统默认,故输出结果为1、0。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值