好了,這裏就是我面臨的一個小問題 - 是否有在Java中一個簡單的方法來投Java - Casting ArrayList <Object[]> to Object [] []?
ArrayList<Object[]> array;
到
Object[][] data;
?
好了,這裏就是我面臨的一個小問題 - 是否有在Java中一個簡單的方法來投Java - Casting ArrayList <Object[]> to Object [] []?
ArrayList<Object[]> array;
到
Object[][] data;
?
Object[][] data=array.toArray();
Object []的內部被視爲一種對象本身。然後將它們放入它們自己的數組中,導致一組數組對象的對象,或者只是一個二維數組。
鑄造不是你正在尋找的解決方案。鑄造基本上可以讓你使用一種方法轉換成特定的類類型。鑄造的一個示例:
(((ClassA的)CLASSB)。方法())
所以返回的值可以放置從實例化對象CLASSB一個ClassA的對象,其中包含方法的()內。你要做的另一方面是創建一個多維數組或2D數組。這本質上是一個數組的數組,其中arrayA [i] = arrayB [];
例如:
Object[] objectArray = new Object[5];
Object[][] = objectArray2D = new Object[][];
objectArray2D[i] = objectArray;
這裏是一個點,你的問題不過,如果你創建一個多維數組,你爲什麼還要給它只有一個數組實例。基本上你會在上面的例子中創建一個數組在數組中,因爲你會給它只有一個數組索引的數組中的所有對象將是相同的,如果你有一個數組,但有一個額外的安置。讓我來解釋:
objectArray [0] ==你放在objectArray的第一個時隙的對象
而objectArray2D [0] [0] ==完全相同的對象作爲objectArray對象[0]
對一個數組使用多維數組沒有任何優勢。如果您要向二維數組索引索引[1] [0],則會收到超出範圍的異常。
最後,我建議你創建一個特定形式的數組,例如int []或string []。 Object []數組的問題在於,您可以將任何被視爲Object的對象存儲到數組中,從而允許在一個數組內存在不同類型對象的潛在集羣。例子你可以有一個objectArray [0] = int 1;和objectArray [1] =一個字符串;除非你想在數組使用中非常具體,否則使用一個Object類型作爲數組可能會更好。
在任何情況下,最終的解決方案到底該怎麼做你想要做的是如下:
ArrayList<Object[]> array;
Object[][] data;
public void changeToAnArray(ArrayList<Object[]> array, Object[][] data)
{
this.array = array.toArray();
this.data[0] = array;
}
也充分注意到一個ArrayList的角度來看,是有本質上是一個二維數組,而不必解析索引。
請任何人隨時糾正我錯誤的部分< <仍在學習。
'array.toArray()'。 –
你爲什麼叫一個List「數組」? – Bohemian
@Bohemian它符合命名約定,無論如何都是* array * List。 – hexafraction