首先我们来分析 下面的两种情况:
1.
public static void main(String[] args) {
int i=3;
swap(i);
System.out.println("----i="+i);
}
private static void swap(int i){
i=6;
System.out.println("i="+i);
}
}
2.
public static void main(String[] args) {
Integer i=new Integer(3);
swap(i);
System.out.println("----i="+i);
}
private static void swap(Integer i){
i=new Integer(6);
System.out.println("i="+i);
}
比较这两段代码有什么不同!
第一种 你可能会以为第会输出 6,然后再输出3,这个是对的,第二个,你可能会以为输出6 6,这是错误的,两种情况输出的结果是相同的。