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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 强晨曦 中级黑马   /  2015-8-27 21:39  /  274 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class Demo2_Operator {
        public static void main(String[] args) {
                /*
                * 位异或运算符的特点

                * ^的特点:一个数据对另一个数据位异或两次,该数本身不变。
                */

                //System.out.println(5 ^ 10 ^ 10);
                //System.out.println(5 ^ 10 ^ 5);

                /*
                * 请自己实现两个整数变量的交换(不需要定义第三方变量)
                * 注意:以后讲课的过程中,我没有明确指定数据的类型,默认int类型。
                */

                int x = 10;
                int y = 5;

                //需要第三方变量,开发推荐用这种
                /*int temp;
                temp = x;
                x = y;
                y = temp;*/

                //不需要定义第三方变量,有弊端,有可能会超出int的取值范围
                /*x = x + y;                                //10 + 5 = 15
                y = x - y;                                //15 - 5 = 10
                x = x - y;                                //15 - 10 = 5*/

                //不需要第三方变量,通过^来做
                x = x ^ y;                                // 10 ^ 5
                y = x ^ y;                                // 10 ^ 5 ^ 5        y = 10
                x = x ^ y;                                // 10 ^ 5 ^ 10  x = 5

                System.out.println("x = " + x + ",y = " + y);
        }
}

1 个回复

倒序浏览
大强大强!!!!!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马