boolean temp1,temp2;
temp1 = true;
temp2 = temp1;
Log.d("rvg", "temp1:"+temp1+" temp2:"+temp2);
temp1 = false;
Log.d("rvg", "temp1:"+temp1+" temp2:"+temp2);
当我执行这个时,我得到了
temp1:true temp2:true
temp1:false temp2:true
但我已更改为数组
boolean[] Temp1,Temp2;
Temp1 = new boolean[1];
Temp2 = new boolean[1];
Temp1[0] = true;
Temp2 = Temp1;
Log.d("rvg", "Temp1:"+Temp1[0]+" Temp2:"+Temp2[0]);
Temp1[0] = false;
Log.d("rvg", "Temp1:"+Temp1[0]+" Temp2:"+Temp2[0]);
当我执行此操作时,我得到了 Temp1 和 Temp 2 的相同值。
Temp1:true Temp2:true
Temp1:false Temp2:false
怎么做才能避免这种情况?