不用新的变量,交换两个变量的值。

不用新的变量,交换两个变量的值。比如有2个变量a , b ,我们希望交换他们的值。

下面介绍两种不同的解法:

第一种:基于加减法

a = a + b ;   //先让a等于和

b = a - b ;  //和减去原来b的值得到原来a的值,赋值给b

a = a - b ; //和减去改变后b的值(原来a的值)得到原来b的值,赋值给a 

第二种:基于异或运算

a = a ^ b  // 先a异或上b,赋值给a

b = a ^ b  // a异或上b,消去b的影响得到原来的a,赋值给b

a = a ^ b  // a异或上改变之后的b(原来a的值)消去原来a的影响得到原来的b值,赋值给a 

原文地址:https://www.cnblogs.com/csxcode/p/3753955.html