【发布时间】:2011-09-18 13:44:55
【问题描述】:
我想知道是否可以改变
ArrayList<ArrayList<String>>
到java中的String[][]。我认为 toArray() 函数不会在其泛型参数中递归。任何建议将不胜感激。
【问题讨论】:
标签: java multidimensional-array arraylist
我想知道是否可以改变
ArrayList<ArrayList<String>>
到java中的String[][]。我认为 toArray() 函数不会在其泛型参数中递归。任何建议将不胜感激。
【问题讨论】:
标签: java multidimensional-array arraylist
如果 bigL 是您更大的数组列表,并且选项卡已创建为 bigL.size()。
你不能这样做吗:
for( ArrayList<String> l : bigL )
{
tab[ index ++ ] = l.toArray( new String[ l.size() ] );
}//for
【讨论】:
你说得对,toArray 不会递归。恐怕您必须手动执行此操作。比如:
List<List<String>> stringLists;
String[][] stringArrays = new String[stringLists.size()][];
int i = 0;
foreach (List<String> stringList: stringLists) {
stringArrays[i] = stringList.toArray(new String[stringList.size()]);
++i;
}
请注意,我实际上还没有尝试过,所以它可能是垃圾。
【讨论】: