简单的拷贝可以传递引用,就像C语言中指针值的传递一样,不过如果希望将一个数组的所有元素拷贝到一个新的数组中去,就使用Arrays 类的copyOf 方法
import java.util.Arrays;
public class Demo {
public static void main(String[] args){
int[] anonymous = { 17,19,23, 29,31,37};
int[] smallPrimes = anonymous;
int[] luckyNumbers = smallPrimes;
int[] copiedLuckyNumbers = Arrays.copyOf(luckyNumbers, luckyNumbers.length);
for(int r : luckyNumbers){
System.out.print(r);
}
System.out.println("\n");
for(int a : copiedLuckyNumbers){
System.out.print(a);
}
System.out.println("\n");
luckyNumbers = Arrays.copyOf(luckyNumbers, 2*luckyNumbers.length);
for(int c : luckyNumbers){
System.out.print(c);
}
}
}
如果数组元素是数值型, 那么多余的元素将被赋值为零,如果数组元素是布尔型,则将赋值为false 。相反如果长度小于原始数组的长度,则值拷贝最前面的数据。