import java.util.ArrayList; 
public class ArrayAndList <E> { 
    
    public static void main(String[] args) { 
      int[][] b= {{1,2}, {2,3,4,5}}; 
      ArrayList <ArrayList <Integer>> list = toList(b); 
      for(ArrayList <Integer> subList : list) { 
        for(Integer iObj : subList) { 
          System.out.println(iObj); 
        } 
      } 
      int[][] list1 = toArray(list); 
      for(int[] subList : list1) { 
          for(int i : subList) { 
            System.out.println(i); 
          } 
      } 
      
    
    } 
    public static ArrayList <ArrayList <Integer>> toList(int[][]a){ 
ArrayList <ArrayList <Integer>> l1=new ArrayList <ArrayList <Integer>>(); for(int[]b:a){ 
          ArrayList <Integer> l2=new ArrayList <Integer>(); 
for(int c:b){ 
l2.add(c); 

l1.add(l2); } 
return l1; 

    
  public static int[][] toArray(ArrayList <ArrayList <Integer>> l){ 
int k=0; 
for (ArrayList <Integer> l1:l){ 
k++; 

int[]j=new int[k-1]; k=0; 
for (ArrayList <Integer> l1:l){ 
for(Integer obj:l1){ 
j[k]+=1; 

k++; 

// 
int[][] result=new int[k-1][]; 
k=0; 
for (ArrayList <Integer> l1:l){ 
result[k]=new int[j[k]-1]; 
int i=0; 
for(Integer obj:l1){ 
result[k][i]=obj; 
i++; 

k++; 

return result; 
} } 
运行是抛出java.lang.ArrayIndexOutOfBoundsException异常

解决方案 »

  1.   

    1,不是没分大家不回答你
    2,你没给大家帮助你提供环境,请将这许多代码放到java code里.
      

  2.   

    java.lang.ArrayIndexOutOfBoundsException
    找这个自己解决比较好 别人找 看看代码好长啊...有点晕。
      

  3.   

    什么乱七八糟的程序,又没有一点注释,格式又乱,谁给你看啊什么地方出错也不说清楚 public static int[][] toArray(ArrayList<ArrayList<Integer>> l) {
    int k = 0;
    for (ArrayList<Integer> l1 : l) {
    k++;
    }
    int[] j = new int[k]; //你以前是k-1,把-1去掉,本来都声明k=0了还减1干嘛? k = 0;
    for (ArrayList<Integer> l1 : l) {
    for (Integer obj : l1) {
    j[k] += 1;
    }
    k++;
    }
    // 
    int[][] result = new int[k][];   //同理
    k = 0;
    for (ArrayList<Integer> l1 : l) {
    result[k] = new int[j[k]]; //同理
    int i = 0;
    for (Integer obj : l1) {
    result[k][i] = obj;
    i++;
    }
    k++;
    }
    return result;
    }