A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 980595778 中级黑马   /  2015-5-13 22:51  /  551 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

前段时间看见的一个面试题,交换两个变量的值,不用第三方变量。
想到异或来处理,如下:
int x,y;x = x^y;
y = x^y;  //     y = ( x^y) ^y ---------->y = x^y^y =x 两个相同的变量抵消
x = x^y; //同上

3 个回复

正序浏览
Advances 发表于 2015-5-13 23:45
int x=10;
int y=20;
x=x+y;

恩恩 ,学习了
回复 使用道具 举报
还是定义新变量简单
回复 使用道具 举报
int x=10;
int y=20;
x=x+y;
y=x-y;
x=x-y;
或者
int x=10;
int y=20;
x=x*y;
y=x/y;
x=x/y;也是可以的  但是有局限性
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马