2013-08-23 41 views
1

我有數據格式的Java的ArrayList <Object[]>爲Object [] []

List<Object[]> data = new ArrayList<Object[]>(); 

for(Something s : SomeList) { 
    Object[] tempList = { s.test, s.test2, s.test3 }; 

    data.add(tempList); 
} 

所以我有Objects[]ArrayList。現在我想的對象的ArrayListObject[][]所以我必須在格式

Object[][] data = { { test, test2, test3 }, { test4, test5, test6 } }; 

的數據,但我不知道該怎麼做。

ArrayList這一步並不重要,它只是我試圖弄清楚的方向。如果您有更好的方式將數據獲取到Object[][]那很好。

+0

@ mdoran3844 - 不正確的。 'for(Something s:someList)'迭代列表或數組中的每個項目。 's.test'和's.test2'表示列表中每個連續項目的屬性。 – jahroy

回答

9

您可以使用List#toArray(T[])

Object[][] array = data.toArray(new Object[data.size()][]); 
+0

當人們閱讀文檔時,歡呼到等待被發現的令人驚喜的驚喜......我有點驚訝,這會起作用,但我只是測試它,它的工作原理非常棒。 +1 – jahroy

+1

作品,非常感謝 – user2686811

1
Object[][] data2 = new Object[data.size()][] 
for(int i = 0; i < data.size(); ++i) 
{ 
    data2[i] = new Object[data.get(i).length]; 
    for(int j = 0; j < data.get(i).length; ++j) 
    { 
     data2[i][j] = data.get(i)[j]; 
    } 
} 
相關問題