How, in Java, do I convert an ArrayList of arrays to a two-dimensional array?
Example:
ArrayList<String[]> results = new ArrayList<String[]>();
String [] columns = {a few strings};
JTable table = new JTable(result开发者_JAVA技巧s.toArray(), columns);
I get the error that JTable(Object[], Object[]) is not defined.
The List<T>.toArray(T[])
method should do the job.
For example:
List<String[]> list = ...
String[][] res = new String[list.size()][];
list.toArray(res);
or
List<String[]> list = ...
Object[][] res = new Object[list.size()][];
list.toArray(res);
If you use this overload rather than the List<T>.toArray()
overload, you can choose the actual type of the array. It takes one extra line of code, but if the array type is significant, this is the way to do it.
(The List<T>.toArray()
overload gives you an array whose actual type is Object[]
... irrespective of the generic type of the list, or the actual type(s) of the list elements.)
In this case, array.toArray()
will do the trick.
精彩评论