法一:创建临时变量
//核心代码 int a,b,temp;
temp = a;
a = b;
b = temp;
若不创建临时变量
法二:通过加减运算
//核心代码
a = a + b;//这个时候a就是他们的和
b = a - b;//和减去b 等于 a
a = a - b;//和减去已经成为a的值的b 等于 b 不足:在进行相加运算的时候可能导致数据溢出
法三:通过异或运算
//原理 任何数异或自身两次等于0,即 a ^ a = 0,且异或具有结合性 //核心代码
a = a ^ b;//1式
b = a ^ b;//2式 1式带入2式 等价于 b = a ^ b ^ b = a,此时b就是a
a = a ^ b;//3式 同理 a = a ^ b ^ a(原本是b) = b
不足:可读性差,不好理解