2013-08-23 43 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]; 
    } 
} 
相关问题