栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java 关系运算符-逻辑运算符概述-逻辑运算符

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java 关系运算符-逻辑运算符概述-逻辑运算符

上期知识回顾

自增自减运算符(练习)

//自增自减运算符
y的值是多少?
int x = 10;
int y = x++ + x++ + x++;
System.out.println(y);


自增自减运算符(练习)

//自减运算符
//b的值是多少?
int a = 10;
int b=a--;
System.out.println(b);


我们把运算符写到前面 结果变化

1.关系运算符


注意事项:关系运算符的结果都是boolean类型,要么是true 要么是false。千万不要把’'误写成’=‘,’‘是判断是否相等的关系,‘=’是赋值

判断值是否相等

1.2逻辑运算符概述

逻辑运算符把各个运算的关系表达式连接起来组成一个复杂的逻辑表达式,以判断程序中的表达式是否成立,判断的结果是true或false。
在数学中,一个数据x,大于3,小于6,我们可以这样来进行表示:3 拆解为:x>3和x<6
合并为: x>3&&x<6
&&其实就是一个逻辑运算符。
我们可以这样说,逻辑运算符,是用来连接关系表达式的运算符。当然,逻辑运算符也可以直接连接布尔类型的常量或者变量。

1.2.1逻辑运算符

逻辑运算符把各个运算的关系表达式连接起来组成一个复杂的逻辑表达式,以判断程序中的表达式是否成立,判断的结果是true或false

&逻辑与表达式

 //&
        System.out.println("&并且");
        System.out.println(true&true);
        System.out.println(true&false);
        System.out.println(false&false);
        int a = 10;
        int b = 20;
        int c = 30;
        //a>b false b>c false
        System.out.println(a>b&b>c); //false
        //ac false
        System.out.println(ac);//false

逻辑异或表达式 与逻辑非表达式

System.out.println("-----------逻辑异或----------");
        System.out.println(true^false);//true
        System.out.println(true^true);//false
        System.out.println(!true);//相反值 //false
1.2.2短路逻辑运算符


只要有一个表达式的值为false,那么结果就可以判定为false了,没有必要将所有表达式的值都计算出来,短路与操作就有这样的效果,可以提高效率。同理在逻辑或运算中,一旦发现值为true,右边的表达式将不再参与运算。逻辑与&,无论左边真假,右边都要执行。
短路与&&,如果左边为真,右边执行;如果左边为假,右边不执行。逻辑或|,无论左边真假,右边都要执行。短路或,如果左边为假,右边执行;如果左边为真,右边不执行。3>6&&4<10
3>6 false

int a=10;int b=20;
System. out. println((a++>100)&(b++>100)) ;
System. out. println("a:"+a) ;
System. out. println("b:"+b);

逻辑与 与短路与的区别 &

        int a=10;
        int b=20;
        // 左边 & 右边 都必须为true 则返回结果是为true
        //a++ > 100 返回为false  (b++>10)true
        // 左边返回false 右边不会执行
        System. out. println((a++>100)&&(b++>100)) ;
        System. out. println("a:"+a) ;
        System. out. println("b:"+b);

逻辑与 与短路与的区别 &&

逻辑或 与短路或的区别 |

int a=10;
        int b=20;
        System.out.println("短路或");
        //或者--左边喝右边只要 有一个返回true 最终结果就返回true
        //(a++>1) true  b++>100 false
        System. out. println((a++>1)|(b++>100)) ;
        System. out. println("a:"+a) ;
        System. out. println("b:"+b);


逻辑或 与短路或的区别 ||

int a=10;
        int b=20;
        System.out.println("短路或");
        //逻辑或 左边为true 不会判断右边 就不会执行 就不会加减
        //(a++>1) true  b++>100 false
        System. out. println((a++>1)||(b++>100)) ;
        System. out. println("a:"+a) ;
        System. out. println("b:"+b);

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/758713.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号