03 在条件结构中,逻辑运算符&&与位运算符&,以及逻辑运算符||(或)与位运算符|的区别

一 代码展示以及运行截图

1 &&

a.&&的代码如下所示

        int a=4;
        int b=2;
        if(a<-9&&b++>1){
            System.out.println("岳阳楼");
        }else{
            System.out.println("黄鹤楼");
        }
        System.out.println("a的值为: "+a);
        System.out.println("b的值为: "+b);

b.&&的运行截图如下所示

2 &

a.&的代码如下所示

        int a=4;
        int b=2;
        if(a<-9&b++>1){
            System.out.println("岳阳楼");
        }else{
            System.out.println("黄鹤楼");
        }
        System.out.println("a的值为: "+a);
        System.out.println("b的值为: "+b);

b.&的运行截图如下所示

3 ||

a.||的代码如下所示

        int a=-11;
        int b=2;
        if(a<-9||b++>1){
            System.out.println("岳阳楼");
        }else{
            System.out.println("黄鹤楼");
        }
        System.out.println("a的值为: "+a);
        System.out.println("b的值为: "+b);

b.||的运行截图如下所示

4 |

a.|的代码如下所示

        int a=-11;
        int b=2;
        if(a<-9|b++>1){
            System.out.println("岳阳楼");
        }else{
            System.out.println("黄鹤楼");
        }
        System.out.println("a的值为: "+a);
        System.out.println("b的值为: "+b);

b.|的运行截图如下所示

二 总结

  1. 单个的&或者单个的|,无论真假,两边都要执行
  2. 成双的&(&&)当前面条件为假时,后面的条件不会执行
  3. 成双的|(||)当前面条件为真时,后面的条件不会执行
  4. 我们把2,3出现的不执行状况叫做短路现象
posted @ 2020-11-10 16:54  SSS翱翔万里  阅读(181)  评论(1编辑  收藏  举报