黑马程序员技术交流社区

标题: Java基础--3种实现两个数的交换的方法 [打印本页]

作者: michael_wlq    时间: 2015-8-24 17:57
标题: Java基础--3种实现两个数的交换的方法
             int m, n;
方法1:通过第三方变量,常规方法,开发中最常用到的。
                int temp;
                temp = n;
                n = m;
                m = temp;

方法2:不用第三方变量,缺点是如果n和m的值非常大,容易超出int类型表示范围。
                n = n + m;
                m = n - m;
                n = n - m;
方法3:通过异或运算(利用a ^ b ^ b = a原理),缺点是不易想到,可读性不强。
                n = n ^ m;
                m = n ^ m; //(n^m)^m = n
                n = n ^ m; // (n ^ m)^n = m






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2