Java多维数组未正确填充

时间:2014-10-01 08:32:16

标签: java arrays

我已声明了这样的多维数组:

String[][] contentDetails  = {};    

我填充了这样的数组:

contentDetails[][]  = {{"Availability","Available from: "+empst}, 
                     {"Rate in EUR/Hour",rst.getString(25)}};

收到错误。我怎样才能做到这一点?我是新来的。请帮帮我。

我想要的是一个空数组,然后需要填充!!

3 个答案:

答案 0 :(得分:1)

这是因为数组常量只能在初始值设定项中使用。

以下方法可行:

 String[][] contentDetails  = {{"Availability","Available from: "+empst}, 
                                {"Rate in EUR/Hour", rst.getString(25)}};

如果你不想在实例化时填充它,你需要实例化数组,为它提供两个维度的长度,如下所示:

String [] [] contentDetails = new String [length1] [length2];

其中 length1 length2 是整数(int)。

答案 1 :(得分:0)

创建数组时,您只能使用 Arrays constant ,而不是之后。这有道理,因为Java在实例化时会如何知道数组的大小?

所以你可以这样做

String[][] contentDetails = {{"Availability","Available from: "+empst}, 
            {"Rate in EUR/Hour",rst.getString(25)}};

或声明数组然后循环它以设置值

String[][] contentDetails [2][2];

...

for(int i = 0;i<2;i++)
  for(int j = 0;j<2;j++)
    //set the value of contentDetails here

答案 2 :(得分:0)

Java中的正确语法如下所示:

String[][] contentDetails = new String[][] {
    new String[] { "Availability", "Available from: "+empst }, 
    new String[] { "Rate in EUR/Hour", rst.getString(25) }
};