赋值:
package Array;
/**
* @Description:
* @Author: 落幕
* @Date: 2022/7/6 11:34
*/
public class ArrayAssign {
public static void main(String[] args){
int n1=10;
int n2=n1;
n2=80;
System.out.println("n1="+n1);
System.out.println("n2="+n2);
//数组在默认情况下是引用传递,赋的值是地址,赋值方式为引用赋值
//是一个地址 arr2变化会影响到arr1
int[] arr1={1,2,3};
int[] arr2=arr1; //把arr1赋给arr2
arr2[0]=10;
for (int i=0;i<arr1.length;i++){
System.out.println(arr1[i]);
}
}
}
运行:
n1=10
n2=80
10
2
3
--------------------------------------------------------------------------------------------------------
拷贝=独立
拷贝:
package Array;
/**
* @Description:
* @Author: 落幕
* @Date: 2022/7/6 20:31
*/
public class Array03 {
public static void main(String[] args){
int[] arr1={1,2,3};
int[] arr2=new int[arr1.length];
//遍历 arr1 ,把每个元素拷贝到arr2对应的元素位置
for (int i=0;i<arr1.length;i++){
arr2[i]=arr1[i];
}
//修改arr1(arr2不变,arr2是独立的)
arr1[0]=10;
//输出arr1
for (int i=0;i<arr1.length;i++){
System.out.print(arr1[i]+" "); //10,2,3
}
}
}
运行:
10 2 3