Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

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(results.toArray(), columns);

I get the error that JTable(Object[], Object[]) is not defined.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
150 views
Welcome To Ask or Share your Answers For Others

1 Answer

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.)


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...