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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© PeterPang 中级黑马   /  2016-1-16 23:41  /  949 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

面试题:实现两个整数变量的交换
                a = a ^ b;
                b = a ^ b;
                //b = a ^ b ^ b;
                //b = a;
                a = a ^ b;
                //a = a ^ b ^ a ^ b ^ b;
                //a = b ;

                int temp = a;
                a = b;
                b = temp;

7 个回复

倒序浏览
这个利用的原理就是一个数与相同的另一个数进行俩次异或运算还是原来的值,比如1010^0101^0101=1010
回复 使用道具 举报
面试很喜欢问的题目
回复 使用道具 举报
很简单却又往往会被忽略
回复 使用道具 举报
这个刚好昨天逻辑运算符那边的知识
回复 使用道具 举报
恩~~~~~~~~~~~~~~~~
回复 使用道具 举报
棒棒哒!!
回复 使用道具 举报
这就是三种数据交换的方式其中的两种,面试的时候要求的是第一种异或
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马