回顾java数组复制

在写这篇文章之前,也看了一些别人写的,基本上都是大同小异。文章是对java数组复制基础知识的回顾,算是作为学习笔记,供以后自己翻阅。

首先,简单想一下这个问题:为什么要复制数组?

我的个人理解:在我们在利用一个数组时,在每一次使用,我们都希望它的值是初始值。这时我们就要对数组进行复制,以达到原始数组值的安全性。


java数组复制大致分为3种方式:①for循环方式 ②clone方式 ③arrayCopy方式,以下分别用例子阐释

 

for循环方式:

int[] a = {1,2,3,4,5};
int[] b = new int[10];
		
for(int i=0; i<a.length; i++){
	b[i] = a[i];
}
		
for(int value:b){
	System.out.print(value);
}

 输出结果为:1234500000

 

clone方式:

int[] a = {1,2,3,4,5};
int[] b = a.clone();
		
b[0]=2;
for(int value:b){
	System.out.print(value);
}

System.out.println();	
for(int value:a){
	System.out.print(value);
}

 输出结果为:22345

                      12345

 

arrayCopy方式:

int[] a = {1,2,3,4,5};
int[] b = new int[10];
		
System.arraycopy(a, 2, b, 0, 3);
		
for(int value:b){
	System.out.print(value);
}

 输出结果为:3450000000

 

 

 

你可能感兴趣的:(java,数组)