JAVA中,这道题为什么不选A或者D 15

A选项中int【】a={1,2,3,4}这样不用new也可以创建数组啊,还有D选项,数组不是连续的存储单元吗?... A选项中int【】a={1,2,3,4}这样不用new也可以创建数组啊,还有D选项,数组不是连续的存储单元吗? 展开
 我来答
主宰比赛Eddie
2017-06-19 · TA获得超过1868个赞
知道小有建树答主
回答量:574
采纳率:0%
帮助的人:120万
展开全部

我已经回答了好几个这个系列的问题了,说实话,这个系列真的好蠢,不知道是谁出的题目,一点都不严谨。

A选项说两点:

1,数组是引用类型,直接说数组是一个对象的,一看就是java学的不好的人能说出来的,他根本没掌握到java的核心本质。

2,创建引用对象的实例对象,需要借助 new 关键字,但是不是必须用new,因为java的反射机制也可以通过 class.newInstance()方法来创建。

B选项:

数组创建以后长度是不可变的,这个没什么说的,如果你要"改变 某个变量引用的数据的长度"

通常的做法是创建一个新的数组,更长或者更短,把老的数组中的内容拷贝到新数组中。

C 选项:

  int[][] array = new int[5][];
        for(int i=0;i<5;i++)
        {
         array[i] = new int[i+5];
         System.out.println(Arrays.toString(array[i]));
        }

声明这个数组的时候不指定二维的长度就可以了,然后分别为第二位数组指定新的长度。打印出来就是

[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0]
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式