将ArrayList <object []>转换为Object [] [] </object []>

时间:2010-12-07 00:51:35

标签: java arrays arraylist

如何在Java中将数组的ArrayList转换为二维数组?

示例:

ArrayList<String[]> results = new ArrayList<String[]>();
String [] columns = {a few strings};


JTable table = new JTable(results.toArray(), columns);

我收到JTable(Object [],Object [])未定义的错误。

2 个答案:

答案 0 :(得分:15)

List<T>.toArray(T[])方法应该可以胜任。

例如:

List<String[]> list = ...
String[][] res = new String[list.size()][];
list.toArray(res);

List<String[]> list = ...
Object[][] res = new Object[list.size()][];
list.toArray(res);

如果使用此重载而不是List<T>.toArray()重载,则可以选择数组的实际类型。它需要一行额外的代码,但如果数组类型很重要,那就是这样做的方法。

List<T>.toArray()重载为您提供了一个数组,其实际类型为Object[] ... 无论列表的泛型类型,还是实际类型列表元素。)

答案 1 :(得分:3)

在这种情况下,array.toArray()可以解决问题。