Java中关于数组之间的复制

public class Main {
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中想把数组里的值赋值过去 就需要通过遍历来复制数组里的值

猜你喜欢

转载自blog.csdn.net/acdream_/article/details/79284416