当我运行这段代码,它打印0,1,2,但我不知道为什么。你能解释我吗?阵列和错误的印刷
public void run() {
int[] arr = new int [3];
for(int i=0; i<arr.length;i++){
arr[i]=i;
}
domore(arr);
for(int i=0; i<arr.length;i++){
println(arr[i]);
}
}
private void domore(int[] arr) {
// TODO Auto-generated method stub
int [] att = new int [3];
for(int i=0; i<att.length;i++){
att[i]=77;
}
arr=att;
}
使用'arr = att;'您只是将引用的本地副本重新分配给数组。 Google传值与传递引用。 – blgt