不凭借第3个变量,实现两个整型变量的交换

不借助第3个变量,实现两个整型变量的交换
public void swap(int a, int b) {
    int t = a;// 使用第三个变量t

    a = b;

    b = t;
}

方法一:借助代数运算
public void swap(int a, int b) {
     a = a + b;

     b = a - b; // 这个时候a=a+b,b=a

     a = a - b; // a = b
}

方法二:借助^异或运算

public void swap(int a, int b) {
     a = a^b;

     b = a^b;

     a = a^b;
}