黑马程序员技术交流社区

标题: 关于逻辑&&与&的区别 [打印本页]

作者: ljj716yzy    时间: 2016-1-18 21:43
标题: 关于逻辑&&与&的区别
很多没有接触过电脑语言的同学在学习是对下面经常弄不清楚
&&与&的区别
        * a:最终结果一样。
        * b:&&具有短路效果。左边是false,右边不执行。

        ||与|的区别
        a:最终的结果是一样
        b:||具有短路效果,左边为true,右边不执行
下面通过实例来看一下
int x = 3;
                int y = 4;
                //System.out.println((++x == 3) & (++y == 4));        //false & false = false
                //System.out.println("x = " + x);                                        //x = 4
                //System.out.println("y = " + y);                                        //y = 5
                System.out.println("---------------------------");
                System.out.println((++x == 3) && (++y == 4));        //false & false = false
                System.out.println("x = " + x);                                        //x = 4
                System.out.println("y = " + y);                                        //y = 4
从上面我们能清楚的看到它们的区别
作者: Robber    时间: 2016-1-18 21:54
解答很明白,有图有真相。
作者: rushing    时间: 2016-1-18 22:16
不错不错。。。。
作者: 愿随风丶飘雪    时间: 2016-1-18 22:19
单个的两边都要看,两个的话只看一边就可以了,除非左边是true,才看右边是什么情况
作者: 愿随风丶飘雪    时间: 2016-1-18 22:23
单个的两边都要看,两个的话只看一边就可以了,除非左边是true,才看右边是什么情况
作者: qt520    时间: 2016-1-19 10:48
提高程序运行效率




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