在数组中,为了能够方便调用,我们通常会进行拷贝的操作。拷贝有两种模块,相信大家都在之前有所了解过。本篇所要说的是一维数组的深拷贝,可以说算是学习数组复制最简单的操作了,总共有三种方法可以实现。下面我们对这些方法进行罗列,然后带来具体的代码展示。
1、三种方法
(1)调用clone
(2)调用System.arraycopy
以上两种对基本类型和对象类型数据效果等同。
(3)使用FOR循环,将数组的每个元素复制。(注意调用clone方法)
2、实例
Object[]src=newObject[]{newString("Zhao"), Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(3), Integer.valueOf(4)}; Object[]dest=src.clone();//1.拷贝数据 //Object[]dest=newObject[5]; //System.arraycopy(src,0,dest,0,dest.length); System.out.println(dest.equals(src)); System.out.println(dest==src); for(inti=0;i<dest.length;i++){ System.out.print(dest[i]+","); dest[i]=newString("KE");//2.改变新数组内容 System.out.print(dest[i]+","); System.out.println(src[i]+",");//3.不影响原始数组 } System.out.println();
注意: 一维数组下的深拷贝在多维数组只是浅拷贝。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容