1) 基本資料類型指派,這個值就是具體的資料,而且互相不影響。
int n1 = 2; int n2 = n1;
2) 數組在預設情況下是引用傳遞,賦的值是位址。
- 看一個案例,并分析數組指派的記憶體圖(重點, 難點. )。
ArrayAssign.java
int[] arr1 = {1,2,3};
int[] arr2 = arr1;
//基本資料類型指派, 指派方式為值拷貝
//n2的變化,不會影響到n1的值
int n1 = 10;
int n2 = n1;
n2 = 80;
System.out.println("n1=" + n1);//10
System.out.println("n2=" + n2);//80
//數組在預設情況下是引用傳遞,賦的值是位址,指派方式為引用指派
//是一個位址 , arr2變化會影響到 arr1
int[] arr1 = {1, 2, 3};
int[] arr2 = arr1;//把 arr1賦給 arr2
arr2[0] = 10;
//看看arr1的值
System.out.println("====arr1的元素====");
for(int i = 0; i < arr1.length; i++) {
System.out.println(arr1[i]);//10, 2, 3
}
System.out.println("====arr2的元素====");
for(int i = 0; i < arr2.length; i++) {
System.out.println(arr2[i]);//10, 2, 3
}
