package day_6_2;
import java.util.Arrays;
/**
*
* 用法一:Arrays.copOf(dataType[] Arrayname,int length)
*其中Arrayname 代表的是要进行复制的数组(源数组),length代表的是复制后新数组的长度。
*使用这个方法复制数组,默认的是从数组第一个元素开始复制。而length是目标数组的长度,
*如果length大于srcArray数组的长度,那么目标数组会采用默认值进行填充。
*如果length小于srcArray数组的长度,
*那么复制的时候只复制到length个元素为止。
*如果目标数组里面有数据,源数组里面的数据就会覆盖目标数组的数据。
*用法二: system.arraycopy(原数组,原数组的起始下标,目标数组,目*标数组的起始下标,要复制的个数)
*/
public class bainli {
public static void main(String[] args) {
//数组的复制 system.arraycopy(原数组,原数组的起始下标,目标数组,目标数组的起始下标,要复制的个数)
int[] a=new int[]{1,2,3,4,56,5,7,8,9};
int[] b=new int[4];
System.arraycopy(a, 1, b, 0, 4);
System.out.println("数组的复制结果");
for(int i=0;i<b.length;i++) {
System.out.print(b[i]+" ");
}
//数组的复制 使用java.util.Arrays类的copyOf方法实现数组的复制 --特点:生成的新数组是原数组的副本
int[] c={1,2,3,4,5,6,7,8,9,90};
int[] d=Arrays.copyOf(c, 10);//超出的补零
int[] e=Arrays.copyOf(c, c.length+1); //扩容
/************************************************/
int[] arr = new int[] { 1, 2, 3, 4 ,5,6,7,8};
byte[] arr1 = new byte[] { 125, 123 };
int[] arr2=Arrays.copyOf(arr, 4);
int[] arr3=Arrays.copyOf(arr, arr.length);
int[] arr4=Arrays.copyOf(arr, arr.length+1);//扩容
long StartTime=System.currentTimeMillis();
for(int i=0;i<arr2.length;i++) {
System.out.print(arr2[i]+" ");
}
System.out.println();
for(int i=0;i<arr3.length;i++) {
System.out.print(arr3[i]+" ");
}
System.out.println();
for(int i=0;i<arr4.length;i++) {
System.out.print(arr4[i]+" ");
}
long EndTime=System.currentTimeMillis();
System.out.println("程序运行时间:"+(EndTime-StartTime));//所花费的毫秒数
}
}
java--数组的复制
最新推荐文章于 2024-09-21 10:38:43 发布