1.使用临时变量
int a = 10;
int b = 20;
int tmp = 0;
//交换a,b的值
tmp = a;
a = b;
b = tmp;
2.不使用临时变量
int a = 10;
int b = 20;
a =a+b;
a = a-b;
b = a-b;
这里首先求出a+b的和,也就是30;把30赋给a,再用a-b 得到a本来的值并将其赋值给b;b = 10
在用和30减去b的值也就是a-b的等于20,将他赋给a,也就完成了值的互换;
3.不使用临时变量(用位操作符
int a = 100;
int b = 200;
a= a^b;
b =a^b;
a=a^b;
首先写出a的二进制序列也就是0110 0100
b的二进制序列1100 1000
把a^b赋给a a = 1010 1100
在把a^b的值赋给b b = 0110 0100
在把a^b的值赋给a a = 1100 1000
这样也就完成了数值的交换