1. 程式人生 > >Java測試一個變數是引用還是值程式碼

Java測試一個變數是引用還是值程式碼

執行方法後   方法體內對引數的操作    會影響到方法體外的物件    所以傳的是引用
public static void main(String[] args) {
        List<String> s1 = new ArrayList<>();
 
        System.out.println("執行前:" + s1);
 
        doTest(s1);
 
        System.out.println("執行後:" + s1);
    }
 
    private static void doTest(List<String> ss) {
        ss.add("a");
    }


像這樣子   方法體內對引數的操作    不會影響到方法體外的物件     傳的是值
public static void main(String[] args) {
        int a = 5;
        System.out.println(a);
 
        doTest(a);
 
        System.out.println(a);
    }
 
    private static void doTest(int a) {
        a = a + 5;
    }