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

解决方案 »

  1.   

    假如里面装的对象是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]);
    }
      

  2.   

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

  3.   

    Iterator iter = list.iterator();
    int arrayLineSize = list.size();
    String[][] strTableInfo = new String[arrayLineSize][];  
    int arrayNum = 0;
    Object[] objTemp = null ;
    while (iter.hasNext()) {
    objTemp = ((List) iter.next()).toArray();
    strTableInfo[arrayNum] = new String[objTemp.length]; 
    for (int i = 0; i < objTemp.length; i++) {
    strTableInfo[arrayNum][i] = objTemp[i].toString();
    }
    arrayNum++;
    }这个是我写的代码,感觉不是很好,想请教一下大家又没有什么更简单的方法.