public static void main(String[] args) {
int []a = {1,2,3,4};
int []b = {4,5,6,7};
System.out.println("先查看数组a和b的内存地址:"+ a +" "+b);
//你之前的方法,数组是不能直接a=b这种方式赋值的,可以用swap2方法那样赋值,
// 但是先改变内存地址是不行的,因为在int的时候就开辟了内存地址
swap(a,b);//值和地址都没变
System.out.println("查看swap方法后数组a和b的内存地址:"+a+" "+b);
for(int i=0;i<a.length;i++){
System.out.print(a[i]+" ");
}
System.out.println();
swap2(a,b);//值变了但地址没变
System.out.println("查看swap2方法后数组a和b的内存地址:"+a+" "+b);
for(int i=0;i<a.length;i++){
System.out.print(a[i]+" ");
}
System.out.println();
System.out.println("想要赋值并改变内存地址必须在int的时候直接赋值");
int [] c =a;
System.out.println("int [] c =a:"+c);
for(int i=0;i<c.length;i++){
System.out.print(c[i]+" ");
}
System.out.println();
int [] d =b;
System.out.println("int [] d =a:"+d);
for(int i=0;i<d.length;i++){
System.out.print(d[i]+" ");
}
}
public static void swap(int[] a, int[] b){
a = b;
}
public static void swap2(int[] a, int[] b){
for(int i=0;i<a.length;i++){
a[i]=b[i];
}
}