java 数组的复制
Posted eyjdbk
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 数组的复制相关的知识,希望对你有一定的参考价值。
java数组的复制分为数组地址的复制和值的复制
地址的复制:
int []arrA=11,22,33,44; //创建一个数组 int [] arrB=new int[5]; System.out.println("拷贝地址(引用)之前"); System.out.println("arrA="+arrA); System.out.println("arrB="+arrB); //引用的拷贝 arrB=arrA; System.out.println("拷贝地址(引用)之后 "); System.out.println("arrA="+arrA); System.out.println("arrB="+arrB);
值的复制:
int [] arrA=11,22,33,44; int [] arrB=new int[5]; //复制 /*arrB[0]=arrA[0]; arrB[1]=arrA[1]; arrB[2]=arrA[2]; arrB[3]=arrA[3];*/ System.out.println("赋值之前"); for(int i=0;i<arrB.length;i++) System.out.print(arrB[i]+"\\t"); //两个数组的长度的最小值 int length=Math.min(arrA.length, arrB.length); for(int i=0;i<length;i++) arrB[i]=arrA[i]; //遍历arrB数组 System.out.println("\\n赋值之后"); for(int i=0;i<arrB.length;i++) System.out.print(arrB[i]+"\\t");
System类中的 arraycopy(…)方法
int [] arrA=11,22,33,44;//源数组 int [] arrB=new int[5];//目标数组 System.out.println("数组拷贝之前"); for(int num:arrB) System.out.print(num+"\\t"); //拷贝 System.arraycopy(arrA, 0, arrB, 1, 2); //从arrA从下标0开始拷贝,拷贝给arrB从下标1开始,拷贝的长度为2 arrB的元素为[0,11,22,0,0] System.out.println("\\n数组拷贝之后"); for(int num:arrB) System.out.print(num+"\\t");
以上是关于java 数组的复制的主要内容,如果未能解决你的问题,请参考以下文章