逻辑运算符&|^! +关系运算符

逻辑运算符:符号两边的数据,数据类型是确定的,只能是bollean类型

                        得到的结果,boolean类型

先声明4个boolean类型的数据

        boolean b1= true;
        boolean b2= true;
        boolean b3= false;
        boolean b4= false;

1.与运算&

规则:同时成立才成立

         System.out.println(b1&b2);//true
        System.out.println(b1&b3);//false
        System.out.println(b3&b4);//false   

2.或运算 |

规则:同时不成立才不成立

        System.out.println(b1|b2);//true
        System.out.println(b1|b3);//true
        System.out.println(b3|b4);//false

 3.异或运算^

异或运算——关心的是两边的boolean类型的数据是否相同

规则:两边的boolean 类型的数据,想用的结果为false,不同的结果为true

        System.out.println("异或运算的结果");
        System.out.println(b1^b2);//false
        System.out.println(b1^b3);//true
        System.out.println(b3^b4);//false

4.非运算!

规则:直接取反面的值true-->false  false-->true

        System.out.println("非运算的结果");
        System.out.println(!b1);//false
        System.out.println(!b3);//true


&&和&、||和|

情景展示:

与运算:两边都是true,结果才是true

如果左边给出的结果是true,仍旧需要判断右边的boolean类型的数据,

                      如果是true,才能得到true的结果

                      如果是false,结果就是false

如果左边给出的结果是false,无论右边是什么,结果一定是false

                     这种情况,可以跳过右边得boolean类型结果得判断,直接获取到结果

或运算:两边都是false,结果才是false

如果左边的结果是false,仍旧要判断boolean的数据,

                      若是true 结果给出true

如果左边给出的结果是true,无论右边是什么,结果则必定是true,

                      这种情况,可以跳过右边的boolean类型结果的判断,直接给出对应的结果

//        测试  &| 是否存在对于特殊情况的处理
        int x=10,y=10;
        boolean r=x++>y++&x++>y++;
        System.out.println(r);
        System.out.println(x);
//x=12,说明&没有对于左边是false的时候,进行跳过右边执行的处理
        System.out.println(y);
        boolean r1=x++>y++&x++>y++;
        System.out.println(r1);
        System.out.println(x);
        System.out.println(y);

&&和&的区别:

&&短路与:针对于与运算的特殊情况进行了特殊的处理

                    当与运算中左边给出boolean类型的数据是false的时候,跳过右边的boolean类型的数据的执行,直接给出最终的结果。

                   跳过右边的执行(短路右边的执行)

                   当与运算中左边给出的是true之后,执行规则和&没有区别——左右都执行

&按位与:无论如何,都会按照从左到右的顺序,依次执行每一个boolean类型的数据的判断

||和|的区别:

 || 短路或 : 针对于或运算的特殊情况做出了特殊的处理
                   当或运算中左边给出的boolean类型的数据是true的时候, 跳过右边的boolean类型数据的执行, 直接给出最终的结果
                   当或运算中左边给出的是false的时候, 仍旧会判断右边
  | 按位或: 无论如何, 都会按照从左到右的顺序, 依次执行每一个boolean类型数据的判断



关系运算符

6种关系运算符

==、!=、>、>=、<、<=

//        1. 给出的结果是boolean类型的数据
        int x=40;
        int y=50;
        System.out.println(x == y);//x的值和y的值是否相同/相等
        System.out.println(x != y);//x的值和y的值是否不同/不等
        System.out.println(x > y);//x的值是否大于y的值
        System.out.println(x >= y);//x的值是否大于等于y的值
        System.out.println(x < y);//x的值是否小于y的值
        System.out.println(x <= y);//x的值是否小于等于y的值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值