代码改变世界

java将两个整形变量互换

2021-03-03 22:57  ᵬyŧểᵬyŧȅ  阅读(201)  评论(0编辑  收藏  举报

方法一:使用第三个变量,达到互换目的

通过使用中间变量c,先把a的值给c,再把b的值给a,最后把c的值给b,就可以实现变量a和b互换。

c = a;
a = b;
b = c;

方法二:对于整形变量,可以通过加减运算达到互换目的

先把a = a+b,再使得b = a-b(等号右侧本质就是初始的a+b-b),最后使得a = a-b(由于经过第二步新的b已经等于初始的a,所以等号右侧本质就是初始的a+b-a),就可以实现变量a和b互换。

a = a+b;
b = a-b;
a = a-b;

方法三:对于整形变量,可以通过异或运算达到互换目的

先把a = a^b(通过二进制异或运算,生成一个两者的中间值即新的a),再使得b = a^b(通过中间值新的a初始的b之间的二进制异或运算使得新的b等于初始的a),

最后使得a = a^b(通过中间值新的a新的b【即初始的a】之间的二进制异或运算使得最新的a等于初始的b),就可以实现变量a和b互换。

a = a^b;
b = a^b;
a = a^b;