很多書籍都說Java支持傳引用調用的方式
看下面的程序
class Person {
private String name;//姓名
private String sex;//性別
public Person(String x
this
this
}
public void setStatus(String x
this
this
}
public String toString() {
return name + sex;
}
// -----交換普通對象-----
public static void changeref(Person tmpx
//交換tmpx和tmpy對象
Person swapref = tmpx;
tmpx = tmpy;
tmpy = swapref;
// System
// System
}
// ----- 交換數組對象-----
public static void changeArrayRef(Person[] x
//交換數組對象
Person swaparrayref = x[x
x[x
y[x
}
//-----交換數組-----
public static void changeArray(int[] x
int[] tmp =x;
x = y;
y = tmp;
}
}
public class Demo {
public static void main(String[] args) {
//-------建立並構造兩個對象---------
Person refa = new Person(
Person refb = new Person(
//交換refa對象和refb對象
Person
//從交換結果中看出
System
System
//-------建立兩個對象數組----------
Person[] arraya = new Person[
Person[] arrayb = new Person[
//分別構造數組對象
arraya[
arrayb[
/*數組對象為null時
*/
System
System
//交換這兩個數組對象
Person
System
System
//-------建立兩個普通數組---------
int[] a = new int[
int[] b = new int[
//給數組個元素賦值
for(int i =
b[i] = i+
}
System
System
//交換數組
Person
System
System
}
}
從程序執行的結果來看
數組對象有點奇怪
數組和普通數據類型一樣
對象也一樣
小結一下
因此要想交換對象
From:http://tw.wingwit.com/Article/program/Java/Javascript/201311/25451.html