例如
int a = 10;
int b = 20;
1.第一种方式(开发中常用)
int c = a;
a = b;
b = c;
运用零时变量交换法
2.第二种方式(面试中用)
a = a ^ b;// a = a ^ b;
b = a ^ b;// b = a ^ b ^ b = a; a = a ^ b;对一个数异或两次得到自己本身
a = a ^ b;//b = a ; a = a ^ b ^ a = b;
利用位异或实现变量交换
3.第三种方式
a = a + b;
b = a - b;
a = a - b;
利用加法进行交换
4.第四种方式
b = (a + b) - (a = b);
一句话搞定