Java 如何从ArrayList转换<;int[]>;到整数数组?

Java 如何从ArrayList转换<;int[]>;到整数数组?,java,arraylist,Java,Arraylist,如何从中转换: ArrayList<int[]> ? 范例 private ArrayList<int[]> example = new ArrayList<int[]>(); e、 g.ArrayList({1,2,3},{2,3,4})到{1,2,3,2,3,4}这个问题(稍微)棘手的部分是,在开始之前必须计算出输出数组需要有多大。因此,解决方案是: 在列表上循环以对列表中数组的大小求和 分配输出数组 使用嵌套循环将整数复制到输出数组 我不会为你编写

如何从中转换:

 ArrayList<int[]>
?

范例

private ArrayList<int[]> example = new ArrayList<int[]>();
e、 g.
ArrayList({1,2,3},{2,3,4})到{1,2,3,2,3,4}
这个问题(稍微)棘手的部分是,在开始之前必须计算出输出数组需要有多大。因此,解决方案是:

  • 在列表上循环以对列表中数组的大小求和
  • 分配输出数组
  • 使用嵌套循环将整数复制到输出数组
  • 我不会为你编写代码的。你应该能够自己编写代码。如果没有,你需要变得有能力。。。试着自己去做



    如果输入和输出类型不同,则可以使用第三方库提供更整洁的解决方案。但是您使用的是
    int[]
    这一事实使得您不太可能找到现有的库来帮助您。

    快速食谱:计算每个数组中的元素数,创建一个数组以保留所有元素,复制元素:)

    import java.util.ArrayList;
    //comentarios em pt br
    公共类seuquevconsegue{
    公共静态void main(字符串[]args){
    ArrayList MeusNumerosdasorter=新的ArrayList();
    添加(新的int[]{1,2,3});
    添加(新的int[]{4,5,6});
    //康塔奥斯元素酒店
    int contatodoselementos=0;
    对于(int[]foo:meusNumerosDaSorte){
    contatodoselementos+=foo.length;
    }
    //元素转移
    int[]destinoFinal=新int[contatodoselementos];
    int-ponteiro=0;
    对于(int[]foo:meusNumerosDaSorte){
    for(int n:foo){
    最终目的地[ponteiro]=n;
    ponteiro++;
    }
    }
    //授予相应的权利:)
    for(int n:最终目的地){
    系统输出println(n);
    }
    }
    }
    
    您尝试过什么吗?您想将列表组合成一个更大的列表吗?你尝试过什么?数组列表到数组?我不明白。可能的副本:@Jake223-我怀疑这是否是确切的副本。OP有一个非常独特的要求。
    private ArrayList<int[]> example = new ArrayList<int[]>();
    
    private int[] example;
    
    import java.util.ArrayList;
    
    // comentarios em pt-br
    public class SeuQueVcConsegue {
    
        public static void main(String[] args) {
    
            ArrayList<int[]> meusNumerosDaSorte = new ArrayList<int[]>();
            meusNumerosDaSorte.add(new int[]{1,2,3});
            meusNumerosDaSorte.add(new int[]{4,5,6});
    
            // conta os elementos
            int contaTodosOsElementos = 0;
            for( int[] foo : meusNumerosDaSorte){
                contaTodosOsElementos += foo.length;
            }
    
            // transfere os elementos
            int[] destinoFinal = new int[contaTodosOsElementos];
            int ponteiro = 0;
            for( int[] foo : meusNumerosDaSorte){
                for( int n : foo){
                    destinoFinal[ponteiro] = n;
                    ponteiro ++;
                }
            }
    
            // confere se esta correto :)
            for(int n : destinoFinal){
                System.out.println(n);
            }
    
        }
    }