在 Java 中,傳參的方式有兩種,分別是傳值和傳引用。
傳值,即是將變量的值復制一份傳遞給函數或方法。
public void add(int a, int b) { int result = a + b; System.out.println("result = " + result); } int x = 2; int y = 3; add(x, y); // 輸出結果:result = 5
傳引用,即是將變量所在內存地址傳遞給函數或方法,兩個變量指向同一個內存地址。
public void changeName(Person person) { person.setName("張三"); } Person p = new Person("李四"); changeName(p); System.out.println("p.getName() = " + p.getName()); // 輸出結果:p.getName() = 張三
在 Java 中,傳遞基本數據類型的值時使用傳值,而傳遞類類型的對象時使用傳引用。
需要注意的是,在這兩種傳遞方式中,如果傳遞的是對象的引用時,即使在函數或方法內部修改了對象的成員變量值,也會影響到原始對象。