public class Test1 { public static void main(String[] args) { int n = 3; System.out.println("Before change, n = " + n); changeData(n); System.out.println("After changeData(n), n = " + n); } public static void changeData(int nn) { nn = 10; } }
我想这个例子大家都明白,基本类型作为参数传递时,是传递值的拷贝(比如拷贝的文本,怎么改变,元文本都不会变),无论你怎么改变这个拷贝,原值是不会改变的,输出的结果证明了这一点: Before change, n = 3 After changeData(n), n = 3