2014-10-01 68 views
-2

我宣佈這樣的多維數組:Java的多維數組不填充正確

String[][] contentDetails = {};  

我填充數組是這樣的:

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

它越來越錯誤。我怎樣才能做到這一點?我是新的。請幫幫我。

我想要的是一個空數組,然後需要填充!

+0

什麼是錯誤? – 2014-10-01 08:33:11

+0

@AbimaranKugathasan錯誤「;」預計 – androidGenX 2014-10-01 08:34:16

+0

請顯示完整的追溯。 – 2014-10-01 08:36:28

回答

1

這是因爲數組常量只能用於初始值設定項。

下面將工作:

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

如果你不想來填補它的實例,你需要實例化數組給它的長度爲兩個維度是這樣的:

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

其中長度1長度2是整數(整數)。

+0

我需要數組第一個空,然後只有我填充if和else條件。 – androidGenX 2014-10-01 08:41:56

+0

@androidGenX然後當你聲明它的時候你需要實例化它。像這樣:String [] [] contentDetails = new String [size1] [size2]。在此之後,你可以填充你的字符串。 – Alboz 2014-10-01 08:48:50

0

您只能使用陣列常量創建數組時,而不是之後。這很有意義,因爲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 
0

Java中的正確的語法如下:

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