public class Main {
public static void main(String[] args) {
int []a1={1,2,3,4,5};
int []a2=a1;
a2[0]=2;
}
}
public static void main(String[] args) {
int []a1={1,2,3,4,5};
int []a2=a1;
a2[0]=2;
}
}
先来引出一个例子----如上述代码
Java中复制数组 会发生什么呢 a2[0]=2; 这肯定没错
但是我们通过打印发现a1[0]=2;
这是为什么呢?
其实在Java中数组名 a1,a2相当于数组的管理者 ,当int []a2=a1;时 其实就相当于一个数组有了两个管理者(有些类似于c语言中指针的概念),当通过管理者a2去改变数组时,当然a1也会改变了。(小结:)所以想要把Java中想把数组里的值赋值过去 就需要通过遍历来复制数组里的值