日期:2014-05-20  浏览次数:20825 次

一个有关ArrayList转化到数组的问题
有一个ArrayList,里面装了若干个ArrayList,现在想把它转化为一个二维数组,请问有没有什么好的方法?

------解决方案--------------------
假如里面装的对象是A类型的,就这样:

ArrayList list = ……
……
A[][] array = new A[list.size()][];
for(int i = 0; i < array.length; ++i) {
ArrayList list = (ArrayList)list.get(i);
array[i] = (A[])list.toArray(new A[0]);
}
------解决方案--------------------
Object[][] a=new Object[M][N];

for(int i=0;i <M;i++)
for(int j=0;j <N;j++){
a[i][j]=arraylist.get(i).get(j);
}

至于M和N,M=arraylist.size();尤其是N,取Max(arraylist.get(i).size()...)