黑马程序员技术交流社区

标题: 变量互换的3个小方法 [打印本页]

作者: wyq0627java11    时间: 2016-8-18 20:03
标题: 变量互换的3个小方法
public class HeiMa {
        public static void main(String[] args) {
                demo1(3, 5);
                demo2(3, 5);
                demo3(3, 5);
        }

        public static void demo1(int a, int b) {
                int c;
                c = a;
                a = b;
                b = c;
                System.out.println("a=" + a + ",b=" + b);
        }

        public static void demo2(int a, int b) {
                a = a + b;
                b = a - b;
                a = a - b;
                System.out.println("a=" + a + ",b=" + b);

        }

        public static void demo3(int a, int b) {
                a = a ^ b;
                b = a ^ b;
                a = a ^ b;
                System.out.println("a=" + a + ",b=" + b);

        }
}



作者: 胡eason    时间: 2016-8-18 20:56
加油!加油!加油!加油!
作者: 乐仔其中    时间: 2016-8-18 21:36
第一种最常用,第三种更高端点。第二种就不太好了,存在不足,a,b的之和万一超出int的范围,那结果不是咱想要的了,所以不建议使用。
作者: talons    时间: 2016-8-18 21:37
我来注释一下,值交换的三种方法:1、中间变量法;2、相互加减法;3、异或法。2和3不需要第三个参数节约内存但是有可能产生溢出,现一般不用。
作者: wx_nJJJAAHB    时间: 2016-8-18 22:05
多看看,巩固一下之前的知识!!!!1
作者: itcoder    时间: 2016-8-18 22:16
顶顶顶顶顶顶顶顶顶顶顶
作者: itcoder    时间: 2016-8-18 22:18
顶顶顶顶顶顶顶顶顶顶顶
作者: 冯潜001    时间: 2016-8-18 22:54
顶个........................
作者: 超绝可爱曾小野    时间: 2016-8-18 23:07
顶一下~
作者: 龙旋    时间: 2016-8-18 23:07
666666666666666666
作者: 时光若止    时间: 2016-8-18 23:12
我一般使用第三个,个人感觉能使程序快1毫秒是1毫秒
作者: 1344667911    时间: 2016-8-19 00:13
顶顶顶顶顶顶顶顶
作者: wyq0627java11    时间: 2016-8-19 00:53
自己顶一下




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