Java 转换ArrayList<;对象[]>;反对[][]

Java 转换ArrayList<;对象[]>;反对[][],java,arrays,arraylist,Java,Arrays,Arraylist,在Java中,如何将数组的ArrayList转换为二维数组 例如: ArrayList<String[]> results = new ArrayList<String[]>(); String [] columns = {a few strings}; JTable table = new JTable(results.toArray(), columns); ArrayList结果=新建ArrayList(); String[]columns={几个字符串};

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

例如:

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


JTable table = new JTable(results.toArray(), columns);
ArrayList结果=新建ArrayList();
String[]columns={几个字符串};
JTable table=新的JTable(results.toArray(),columns);

我得到一个错误,JTable(Object[],Object[])未定义。

在这种情况下,
array.toArray()
将完成此任务。

该方法应完成此任务

例如:

List<String[]> list = ...
String[][] res = new String[list.size()][];
list.toArray(res);
List=。。。
字符串[][]res=新字符串[list.size()][];
列表。toArray(res);

List=。。。
Object[]res=新对象[list.size()][];
列表。toArray(res);
如果使用此重载而不是
List.toArray()
重载,则可以选择数组的实际类型。它需要额外的一行代码,但是如果数组类型是重要的,这就是实现它的方法


(无论列表的泛型类型或列表元素的实际类型如何,
List.toArray()
重载都会为您提供一个实际类型为
Object[]
…的数组。)

@yodie-有关更好的解决方案,请参阅我的答案。@Stephen C--完成!评论只花了几秒钟,接受只花了三分钟!我懂了。我使用的是res=Object[],而不是Object[]。谢谢(是的,OP中的代码是以前的版本。)非常感谢!
List<String[]> list = ...
Object[][] res = new Object[list.size()][];
list.toArray(res);