变量交换的三种方法

//变量交换的三种方法

 int a = 3, b = 4;

 //中间变量法
 int temp = a;
 a = b;
 b = temp;

 
//如果不能使用中间变量:

 //加减法(两个数相加的时候,值有可能超出int表示范围,不推荐。)
 a = a + b;// a = 3 + 4 --> a = 7
 b = a - b;// b = 3 + 4 - 4 --> b = 3
 a = a - b;// a = 3 + 4 - 3 --> a = 4


 //异或法(该方式虽然效率高,而且避免了超出int值,但是可读性较差。)
 a = a ^ b;// a = 3 ^ 4;
 b = a ^ b;// b = (3 ^ 4) ^ 4 --> b = 3
 a = a ^ b;// a = (3 ^ 4) ^ 3 --> a = 4

猜你喜欢

转载自blog.csdn.net/Erenlui/article/details/121154105