frece
public class Test {
public static void main(String[] args) {
//方法一:引用传递
//创建A对象并给数组赋值
A a = new A();
//得到A对象的数组
int[] aArr = a.getIntArr();
System.out.println("引用传递的A数组: ");
for (int i = 0; i
System.out.print(aArr[i] + " ");
}
//创建B对象并给数组赋值
B b = new B();
b.setIntArr(aArr);
System.out.println("\n引用传递的B数组: ");
int[] bArr = b.getIntArr();
for (int i = 0; i
System.out.print(bArr[i] + " ");
}
//改变B数组,A数组也会随之变化
bArr[2] = 666;
System.out.println("\n引用传递改变值之后的A数组: ");
for (int i = 0; i
System.out.print(aArr[i] + " ");
}
System.out.println("\n引用传递改变值之后的B数组: ");
for (int i = 0; i
System.out.print(bArr[i] + " ");
}
//方法二:值传递
A aa = new A();
int[] aaArr = aa.getIntArr();
int[] tempArr = new int[aaArr.length];
System.out.println("\n值传递的A数组: ");
for (int i = 0; i
tempArr[i] = aaArr[i];
System.out.print(aaArr[i] + " ");
}
//创建B对象并给数组赋值
B bb = new B();
bb.setIntArr(tempArr);
System.out.println("\n值传递的B数组: ");
int[] bbArr = bb.getIntArr();
for (int i = 0; i
System.out.print(bbArr[i] + " ");
}
//改变B数组,A数组不会随之变化
bbArr[2] = 666;
System.out.println("\n值传递改变值之后的A数组: ");
for (int i = 0; i
System.out.print(aaArr[i] + " ");
}
System.out.println("\n值传递改变值之后的B数组: ");
for (int i = 0; i
System.out.print(bbArr[i] + " ");
}
}
}
class A{
private int[] intArr = {1,2,3,4,5};
//get().. set()..
public int[] getIntArr() {
return intArr;
}
public void setIntArr(int[] intArr) {
this.intArr = intArr;
}
}
class B{
private int[] intArr ;
//get().. set()..
public int[] getIntArr() {
return intArr;
}
public void setIntArr(int[] intArr) {
this.intArr = intArr;
}
}要保证B类和A类中有相同类型的数组昂