小结一下:
给出两个变量:var a = 1, b = 2;
方法一:
a = a + b;
b = a - b;
a = a - b;
a, b 的值已经交换。
方法二:
a = a ^ b;
b = a ^ b;
a = a ^ b;
a, b 的值已经交换。
原理:异或运算,任意一个数与任意一个给定的值异或两次,其值保持不变。
方法三:
a = b + (b = a) * 0; 或者
a = (a + b) - (a = b);
a, b 的值已经交换。
小结一下:
给出两个变量:var a = 1, b = 2;
方法一:
a = a + b;
b = a - b;
a = a - b;
a, b 的值已经交换。
方法二:
a = a ^ b;
b = a ^ b;
a = a ^ b;
a, b 的值已经交换。
原理:异或运算,任意一个数与任意一个给定的值异或两次,其值保持不变。
方法三:
a = b + (b = a) * 0; 或者
a = (a + b) - (a = b);
a, b 的值已经交换。
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。