这里介绍几种拷贝数组的方法:for循环、clone()和Arrays.arraycopy。
1.for循环
publicstaticvoidshow1(int[][]array){ for(inti=0;i<array.length;i++){ for(intj=0;j<array[i].length;j++){ System.out.print(array[i][j]+""); } System.out.println(); } }
2.clone()
/** *使用数组本身的clone()方法 * *@paramsourceArr源数组 *@paramdestArr目标数组 */ publicstaticvoidcopy3(int[][]sourceArr,int[][]destArr){ for(inti=0;i<sourceArr.length;i++){ destArr[i]=sourceArr[i].clone(); } }
3.Arrays.arraycopy
int[][]array={{1,2,3},{4,5,6}}; int[][]array2=newint[2][3]; for(inti=0;i<array.length;i++){ System.arraycopy(array[i],0,array2[i], 0,array[i].length);
4.速度比较
arraycopy的源代码,这种方法拷贝速度最快,没有返回值。
@HotSpotIntrinsicCandidate publicstaticnativevoidarraycopy(Objectsrc,intsrcPos, Objectdest,intdestPos, intlength);
以上就是java二维数组拷贝效率比较,通过本篇的学习,我们在掌握了三种拷贝数组方法的同时,分析出了最快的拷贝方法,并为大家展现出来原因。小伙伴们使用的时候可以自行挑选。更多Java学习指路:java数组
原文来自:https://www.py.cn© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容