String [] names = String [0];这有效吗?

时间:2015-08-12 05:58:51

标签: java arrays

我在this website上测试过:

String[] names =new String[0]; 

结果表明这是有效的,但是当我在IDE上测试它时,我收到一个错误。有人告诉我为什么?

3 个答案:

答案 0 :(得分:5)

你错过了新的运营商: -

window.attributes('-zoomed', True)

但是你需要给阵列增加一些尺寸才能使用它 上面的代码创建了一个String类型和大小为0的数组。

答案 1 :(得分:5)

String[] names可以通过多种方式进行初始化:

(1) String[] names = {};
(2) String[] names = new String[0];
(3) String[] names = new String[] {};

答案 2 :(得分:3)

String[] names = new String[0]; 

是一个有效的语句(如the web-quiz that you mention建议的那样),即使我质疑它的可用性,因为它创建了一个零长度的数组,所以你不能添加任何元素...

您在评论中暗示(我认为)的错误

  

“如果创建一个String类型和大小为0的数组。我认为名称变量未被使用。我们无法为名称变量赋值。谢谢”

Amit Bhati(完全有效)的答案中,

不是错误。

“未使用变量”是一个警告,告诉您声明了一些您​​从未使用过的东西。换句话说,您不会为此数组指定任何值。如果你之后实际使用names变量并为其赋值(即使它没有意义,因为它有0长度),警告将消失。

例如:

names[0] = "something";

这会将IDE警告转变为运行时问题,但是......

编辑:至于为什么java允许声明0长度数组,你可以关注this post

相关问题