• 技术文章 >java >java数组

    java二维数组拷贝效率比较

    小妮浅浅小妮浅浅2021-03-10 16:35:53原创4637

    这里介绍几种拷贝数组的方法:for循环、clone()和Arrays.arraycopy。

    1.for循环

    public static void show1(int[][] array){
            for(int i = 0;i < array.length;i++){
                for(int j = 0;j < array[i].length;j++){
                    System.out.print(array[i][j]+" ");
                }
                System.out.println();
            }
        }

    2.clone()

    /**
     * 使用数组本身的 clone() 方法
     *
     * @param sourceArr 源数组
     * @param destArr   目标数组
     */
    public static void copy3(int[][] sourceArr, int[][] destArr) {
        for (int i = 0; i < sourceArr.length; i++) {
            destArr[i] = sourceArr[i].clone();
        }
    }

    3.Arrays.arraycopy

    int[][] array = {{1,2,3},{4,5,6}};
            int[][] array2 = new int[2][3];
            for(int i = 0;i < array.length;i++){
                System.arraycopy(array[i], 0, array2[i],
                        0, array[i].length);

    4.速度比较

    arraycopy的源代码,这种方法拷贝速度最快,没有返回值。

    @HotSpotIntrinsicCandidate
    public static native void arraycopy(Object src,  int  srcPos,
                                        Object dest, int destPos,
                                        int length);

    以上就是java二维数组拷贝效率比较,通过本篇的学习,我们在掌握了三种拷贝数组方法的同时,分析出了最快的拷贝方法,并为大家展现出来原因。小伙伴们使用的时候可以自行挑选。更多Java学习指路:java数组

    (本教程操作环境:windows7系统、java10版,DELL G3电脑。)

    专题推荐:java 二维数组
    上一篇:java二维数组的赋值方法 下一篇:java常见递归练习题

    相关文章推荐

    • java中一维数组是什么• 一维数组在java中实现排序• java中的多维数组是什么• java中一维数组常见运算• java数组内存的探究• java二维数组的赋值方法

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网