欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java 值傳入和引入傳入

錢斌斌2年前9瀏覽0評論

Java中的方法參數傳遞方式分為值傳遞和引用傳遞兩種。

值傳遞:簡單來說就是將變量的值傳遞給方法的參數,方法得到的是變量值的拷貝,原變量的值不會改變。

// 值傳遞示例
public class Test{
public static void main(String args[]){
int num = 10;
System.out.println("調用change方法前:" + num);
change(num);
System.out.println("調用change方法后:" + num);
}
public static void change(int num){
num++;
System.out.println("change方法中:" + num);
}
}
// 輸出結果:
// 調用change方法前:10
// change方法中:11
// 調用change方法后:10

引用傳遞:將對象的地址傳遞給方法的參數,方法得到的是對象的地址,可以修改對象屬性,從而改變原對象的值。

// 引用傳遞示例
import java.util.ArrayList;
public class Test{
public static void main(String args[]){
ArrayListlist = new ArrayList();
list.add("apple");
list.add("banana");
list.add("orange");
System.out.println("調用change方法前:" + list);
change(list);
System.out.println("調用change方法后:" + list);
}
public static void change(ArrayListlist){
list.add("pear");
System.out.println("change方法中:" + list);
}
}
// 輸出結果:
// 調用change方法前:[apple, banana, orange]
// change方法中:[apple, banana, orange, pear]
// 調用change方法后:[apple, banana, orange, pear]

需要注意的是,原本的傳遞方式不會受到賦值操作的影響。即使將一個引用類型的變量賦值給另一個變量,賦值后的變量與原本的變量雖然指向同一對象,但是它們并不是同一個變量。

// 引用傳遞賦值示例
import java.util.ArrayList;
public class Test{
public static void main(String args[]){
ArrayListlist1 = new ArrayList();
list1.add("apple");
ArrayListlist2 = list1;
System.out.println(list1 == list2);
list2.add("banana");
System.out.println("list1:" + list1);
System.out.println("list2:" + list2);
}
}
// 輸出結果:
// true
// list1:[apple, banana]
// list2:[apple, banana]