黑马程序员:交换变量的三种方法

来源:互联网 发布:350淘宝装修平台app 编辑:程序博客网 时间:2024/06/05 00:40
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------


交换变量的三种方法

方式一

temp = a;

a = b;

b = temp;

解析:这种是最常用的,也是最容易理解的方式,不解释了。

方式二

a = b - a;

b = b - a;

a = b + a;

解析:第一个b-a后,a等于b和a的差;

第二个b-a是b减去差,正好是a,然后把它赋值给b;

第三个b+a,这时候b=a的值,a等于它们之间的差,然后a加上差等于b,就把b的值赋值给a;

方式三

a = a ^ b;

b = a ^ b;

a = a ^ b;

解析:这种也是最神奇的一种,利用异或^来交换变量;

异或^的特性:a ^ b ^ a == b;

第一步的a = a ^ b;保持不变;

第二步a ^ b == a ^ b ^ b == a ^ 0 == a;就是把a赋值给b;

第三步a ^ b == a ^ b ^ a == b;就是把b赋值给a;


------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
0 0