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

yod*_*die 5 java arrays arraylist

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

例:

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


JTable table = new JTable(results.toArray(), columns);
Run Code Online (Sandbox Code Playgroud)

我得到了JTable(Object [],Object [])没有定义的错误.

Ste*_*n C 16

List<T>.toArray(T[])方法应该完成这项工作.

例如:

List<String[]> list = ...
String[][] res = new String[list.size()][];
list.toArray(res);
Run Code Online (Sandbox Code Playgroud)

要么

List<String[]> list = ...
Object[][] res = new Object[list.size()][];
list.toArray(res);
Run Code Online (Sandbox Code Playgroud)

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

(该List<T>.toArray()过载给你一个数组,其实际类型是Object[]... 不论一般类型列表中,或者列表中的元素的实际类型(一个或多个)中的).