不记得在哪里看到Java只有值传递,也就是形参不会改变实参的数据。
但是今天测试却发现不是这样的。下面说一下我的测试结果

注:我把会改变实参的值叫做,地址值(引用)传递


测试结果如下:
1、八大基本数据类型,以及他们的包装类型。 是 值传递
2、其它的对象,比如,List、Set、Map、以及自己创建的对象都是 地址值传递


测试基本代码如下

public class Test2 {
    
    void fun (Integer i){
        i = 2;
    }
    public static void main(String[] args) {
        Test2 test = new Test2();
        Integer i = new Integer(1);
        test.fun(i);
        System.out.println(i);
    }
}