猿问

Java 二维数组初始化问题

java 中二维数组本质是一位数组,只不过一位数组里各个元素还是一位数组。

一位数组初始化格式为

type[]arr=new type[4]

那么把type 类型变为type[]即是二维数组。
那么问题来了,为什么要这样初始化

type[][]arr=New type[4][]

数组中元素类型为type[],按照一位数组初始化的格式 应该是

type[][]arr=New type[][4]

为什么不是最后这种呢?


慕标5832272
浏览 891回答 2
2回答

萧十郎

我就喜欢肯动脑的!反问一句,你定义了一个长度为4的数组x[], x就是type[]. 你能new 一个x出来吗?不能。 最后告诉你正确答案,4写在前面表示一维坐标,后面是二维坐标,没有定义一维,二维无法立足吖。

慕森卡

type[][]arr=New type[][4]为什么不是这样子呢,因为已经规定好了,这语言就是这么设计的,你说能有为什么,前面的[]表示的外部的数组,后面的[]才表示内部的数组,只有外部的数组有大小,内部的数组才有意见,就是这么约定的
随时随地看视频慕课网APP

相关分类

Java
我要回答