您的位置:首页 > 其它

如果不引用第三个变量,就能直接交换两个变量的值?

2017-09-23 21:16 351 查看
方法一:

var a=1;

var b=2;

a=a+b;

b=a-b;

a=a-b;

输出a,b可以发现两值已经交换

方法二:

//异或操作方法

var a=1;

var b=2;

a=a^b;

b=a^b;

a=a^b;

输出a,b可以发现两值已经交换

交换流程如下:

a=1 0000 0001

b=2 0000 0010

a=a^b   0000 0011

b=a^b 0000 0001

a=a^b 0000 0010

基于以上分析,可以知道许多开发技巧可以来源于数学理论,这种基于数学理论的应用在技术开发上可以弄出很多东西来,在实际的应用中也有着现实性的意义。虽然“不用第三个变量,直接交换两个变量的值”的方法不是我想到的,不过相信有了强大数学理论背景之后,在开发以及其他创造性工作中,只要注意培养这种应用意识,我们也能创造出这种“伎俩”来,只要善于思考,善于总结,创造性思维还是可以培养出来的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  变量交换