import java.util.Arrays;
public class TestNineArrayTest {
public static void exchange(int[] arr){
System.out.println(Arrays.toString(arr));
//引用类型进行值传递,传递的是对应的空间地址,类似python的浅拷贝
//进行数组中的值交换位置,后续调用该方法后再输出改数组是交换后的数组
int temp = arr[0]; //基本数据类型进行的赋值是值传递
arr[0] = arr[1]; //基本数据类型进行的赋值是值传递
arr[1] = temp; //基本数据类型进行的赋值是值传递
System.out.println(Arrays.toString(arr));
}
public static void main(String[] args) {
// 1.声明int类型的数组ages int[] ages 2.在堆中初始化数据 new int[]{20,15,18,25} 3.把被初始数组的地址赋值给ages变量
int[] ages = new int[]{20,15,18,25};
System.out.println(ages);
//在堆中初始化一个新的数据组,把数组的地址重新赋值给ages
ages = new int[]{50,20,32,19};
System.out.println(ages);
System.out.println(Arrays.toString(ages));
//调用上面的exchange方法
int[] arr = new int[]{20,10};
exchange(arr); //此处传递的是数组 引用类型传递的是地址
//调用exchange方法执行后,arr数组的值发生了交换,但是空间地址指向没有改变,地址传递,此处打印得到是交换后的数组
System.out.println(Arrays.toString(arr));
}
}