基本类型
public static void main(String[] args) {
int num1 = 10;
int num2 = 20;
swap(num1, num2);
System.out.println("num1 = " + num1);
System.out.println("num2 = " + num2);
}
public static void swap(int a, int b) {
int temp = a;
a = b;
b = temp;
System.out.println("a = " + a);
System.out.println("b = " + b);
}
输出结果
a = 20
b = 10
num1 = 10
num2 = 20
分析
引用类型
public class TestDemo {
public static void main(String[] args) {
DataWrap dw = new DataWrap();
dw.a = 10;
dw.b = 20;
swap(dw);
System.out.println("main方法中的a="+dw.a+", b="+dw.b);
}
public static void swap(DataWrap dw){
int temp = dw.a;
dw.a = dw.b;
dw.b = temp;
System.out.println("swap方法中的a="+dw.a+", b="+dw.b);
}
}
class DataWrap{
public int a;
public int b;
}
结果:
swap方法中的a=20, b=10
main方法中的a=20, b=10
分析