@Test
void contextLoads() {
int[] array1,array2;
array1 = new int[]{2, 3, 4, 5, 6};
for (int i = 0; i < array1.length; i++) {
}
array2=array1;
for (int i = 0; i <array2.length ; i++) {
if (i%2==0){
array2[i]=i;
}
}
for (int i = 0; i <array1.length ; i++) {
System.out.println(array1[i]);
}
}
在这个例子中最后输出的结果为:
因为array2=array1这个语句就相当于把1的地址赋予给了2,现在对2的操作就相当于在对于1的操作一样。就和文件夹复制一个概念。
但是如果是写的是这个语句
array2=new int[array1.length];
那么就不会产生上诉情况,因为这是new的一个新地址