在同一行上声明多个Java数组?

时间:2010-12-01 19:40:09

标签: java arrays

是否可以在Java中的同一行初始化和/或声明多个数组?

即。

int a, b, c, d, e = 4

有效但

int[] a, b, c, d, e, = new int[4] 

似乎不起作用(数组大小为4)

4 个答案:

答案 0 :(得分:18)

请记住

int a, b, c, d, e = 4;

宣布5个整数但仅初始化'e'。

以同样的方式,

int[] a, b, c, d, e = new int[4];

只会初始化e。

你需要像

这样的东西
int[] a=new int[4], b=new int[4], etc...
坦率地说,不值得单行......

答案 1 :(得分:4)

您错过了new关键字 试试这个:

int[] a, b, c, d, e = new int[4];

答案 2 :(得分:2)

int[] a = new int[4], b = new int[4], c = new int[4], d = new int[4], e = new int[4];

如果要创建五个不同的数组,则必须为每个变量实例化一个数组。

如果你想创建一个数组并从五个变量引用它,Goran就有了解决方案。

答案 3 :(得分:1)

您尝试的只适用于值类型。在Java中,数组是引用类型,即对象。

你所尝试的是不可能的(正如Gwyn解释的那样)。

另一方面,你可以:

int[][] arrays = new int[4][5];

然后使用:arrays[0]arrays[1] ..代替od ab