品易云推流 关闭
文章详情页
文章 > java数组 > java一维数组的深拷贝方式

java一维数组的深拷贝方式

头像

小妮浅浅

2021-02-20 16:17:415443浏览 · 0收藏 · 0评论

在数组中,为了能够方便调用,我们通常会进行拷贝的操作。拷贝有两种模块,相信大家都在之前有所了解过。本篇所要说的是一维数组的深拷贝,可以说算是学习数组复制最简单的操作了,总共有三种方法可以实现。下面我们对这些方法进行罗列,然后带来具体的代码展示。

1、三种方法

(1)调用clone

(2)调用System.arraycopy

以上两种对基本类型和对象类型数据效果等同。

(3)使用FOR循环,将数组的每个元素复制。(注意调用clone方法)

2、实例

       Object[] src = new Object[]{ new String("Zhao"),
                                        Integer.valueOf(1),
                                        Integer.valueOf(2),
                                        Integer.valueOf(3),
                                        Integer.valueOf(4)};                               
       Object[] dest = src.clone();                //1.拷贝数据       
        // Object[] dest = new Object[5];
        // System.arraycopy(src, 0, dest, 0, dest.length);       
        System.out.println( dest.equals(src));
       System.out.println( dest == src );
       for (int i = 0; i < dest.length; i++) {
           System.out.print( dest[i]+", " );     
           dest[i] = new String("KE");               //2.改变新数组内容                  
            System.out.print( dest[i]+", " );        
            System.out.println( src[i]+",");          //3.不影响原始数组
        }
       System.out.println();

注意: 一维数组下的深拷贝在多维数组只是浅拷贝。

以上就是java一维数组的深拷贝方式,大家可以对三种方法分别进行尝试,然后挑选出最适合自己的方法进行强化练习。更多Java学习指路:java数组

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图