数组的赋值
值拷贝赋值
普通数据类型赋值是值拷贝赋值例如
int a = 1;
int b =a;
这里就代表值拷贝赋值,相当于将a的值复制一份出来 给到b
可以理解为 a有一个箱子和一把钥匙里面存了一个 1
然后 a把这个钥匙 箱子 和1都复制了一份给到b 此时a的箱子和b的箱子是独立的分开的 但是a留了一个可以去b箱子的单向通道,a可以拿(或者放)b箱子里的东西,但是b不可以动a的箱子
所以 a改动了值 b也会改动
b改动了 a不会改动
int arr1 = 10;
int arr2 =arr1;内存示意
引用传递赋值
数组之间的赋值都是引用传递例如
int[] arr1 ={1,2,3};
int[] arr2 =arr1;
这里代表着将arr1的地址给到arr2,相当于arr1有一个箱子和一把钥匙,arr1把钥匙复制了一份给arr2,两人一起管理箱子。arr1和arr2都可以动箱子里的东西
所以 arr1改动arr2也会改动
arr2改动arr1也会改动
int[] arr1 ={1,2,3};
int[] arr2 =arr1;内存示意