2013-01-17 50 views
-1

我有一個String[][]類型的數組,這樣,如何獲得的String [] []數組的長度

static final String arrChildelements[][] = { 
    { "1", "2", "3"..... }, 
    { "A", "B", "C"..... }, 
    { "X", "Y", "Z"..... } }; 

這裏的行數是固定的,即3.現在我想存儲該數組中一些其他相同類型的數組。我做了什麼至今,

for (int i = 0; i < 3; i++) { 
     for (int j = 0; j < secondColumnLength; j++) { 
      //Here I have no idea that how to get the number of elements for the column 
      arrChild[i][j] = arrChildelements[i][j]; 
     } 
    } 

到目前爲止,我只能記住這個方法通過String[][]陣列進行迭代。雖然我很想知道是否有其他的好方法可以做到這一點。

+1

您需要循環至少一次,在循環內您可以使用Copyof http://developer.android.com/reference/java/util/Arrays.html#copyOf(int [],int) – AurA

回答

1

相反迭代數組中的每個成員,而不是使用System.arraycopy()

System.arraycopy(arrChildElements, 0, arrChild, 0, arrChildElements.length); 

此外,如果你必須遍歷每個值,arrChildElements.length是你的外環價值,arrChildElements[i].length是你的內在循環價值。

+0

Simply Awesome。 Thanx以前從未聽說過** arraycopy()**。但它工作奇蹟。 –

+1

沒問題!很高興它適合你。 – Zyerah

1

arrChildelements.length是行數
arrChildelements[i].length是行i中的列數。

它一直在爲更多維度工作。

0
for (int i = 0; i < arrChildelements.length; i++) { 
    for (int j = 0; j < arrChildelements[i].length; j++) { 
     arrChild[i][j] = arrChildelements[i][j]; 
    } 
} 
+0

this或多或少是他想要避免的 – AurA

1
arrChildElements.length = length of first dimension 
arrChildElements[].length = length of second dimension 
相關問題