Java基础逻辑运算符

逻辑运算符:
& 逻辑与【并且】(两边的算子都是true,结果才是true)
| 逻辑或【或者】(两边的算子只要有一个是true,结果就是true)
! 逻辑非(取反,!false就是true,!true就是false,这是一个单目运算符)
^ 逻辑异或(两边的算子不一样,结果就是true)

&& 短路与
|| 短路或

  • 1.逻辑符要求两边的算子都是布尔类型,并且逻辑运算符最终的运算结果也是一个布尔类型。

  • 2.短路与和逻辑与最终的运算结果是相同的,只不过短路与存在短路现象。

  • 3.短路或和逻辑或最终的运算结果是相同的,只不过短路或存在短路现象。

  • 4.什么情况下发生短路现象呢?

  • 5.什么时候选择使用逻辑与运算符?什么时候选择使用短路与运算符?

    public class OperatorTest03{public static void main(String[] args){//运算符优先级不确定,加小括号System.out.println( 5 > 3 & 5 > 2);//trueSystem.out.println( 5 > 3 & 5 > 6);//trueSystem.out.println( 5 > 3 | 5 > 6);//trueSystem.out.println( true & true);//trueSystem.out.println( true & false);//falseSystem.out.println( false & true);//falseSystem.out.println( false & false);//falseSystem.out.println( true | false);//trueSystem.out.println( false | false);//falseSystem.out.println( !false );//trueSystem.out.println( !true );//falseSystem.out.println( true ^ false );//trueSystem.out.println( false ^ false );//falseSystem.out.println( true ^ true );//false//逻辑与和短路与int x = 10;int y = 8;//逻辑与System.out.println(x < y & ++x < y);System.out.println(x);//11//逻辑与和短路与int x = 10;int y = 8;//短路与//x < y结果是false,整个表达式结果已经确定是false//所有后面的表达式没有在执行,这种现象被称为短路现象。//短路与才会有短路现象,逻辑与是不会存在短路现象的。System.out.println(x < y && ++x < y);System.out.println(x);//10/*从某个角度来看,短路与更智能。由于后面的表达式可能不执行,所以执行效率较高。这种方式在实际的开发中使用较多。短路与比逻辑与使用的多。短路与更常用。但是,在某些特殊业务当中,要求运算符两边的算子必须全部执行,此时必须使用逻辑与,不能使用短路与,使用短路与可能导致右边的表达式不执行。*//*什么情况下发生短路或?* 第一个表达式执行结果是true,会发生短路或。什么情况下发生短路与?*第一个表达式执行结果是false,会发生短路与。*/}
    }
    

Java基础逻辑运算符相关推荐

  1. Java基础-逻辑运算符

    文章目录 短路与(&&) 什么是短路现象 什么时候使用短路与(&&),什么时候使用逻辑与(&) 短路与(&&)和逻辑与(&)的区别 短路 ...

  2. 逻辑运算符,if、swtch语句(java基础知识三)

    1.逻辑运算符的基本用法 * A:逻辑运算符有哪些 &(逻辑与) |(逻辑或) !(逻辑非) ^(逻辑异或) &&(短路与) ||(短路或) * 注意事项: * a:逻辑运算符 ...

  3. Java基础概念性的知识总结

    属于个人的所学的知识总结,不是全面的 1.JDK.JRE和JVM三者的区别 01.JDK:(Java Development ToolKit)Java开发工具包,是整个Java的核心.包括了Java的 ...

  4. Java基础学习(1)

    Java基础知识 Java平台 1995年由Sun公司创建 Java的体系结构 JVM Java Virtue Machine Java代码的执行顺序 JDK Java Development Kit ...

  5. Java基础语法纯小白入门

    Java是一门很热门的计算机语言,它能为互联网应用.企业内部应用提供很好的程序,还可以在硬件如手机,家电,机床,服务器,电脑,机器人等上面进行嵌入式编程让硬件活动,也可以用来建设网站,比如影音艺这个网 ...

  6. Java基础学习总结(20)——基础语法

    2019独角兽企业重金招聘Python工程师标准>>> 一.标识符 二.关键字 三.JAVA基础数据类型 3.1. java常量 3.2. java变量 从本质上来讲,变量其实是内存 ...

  7. 【转】Java基础知识整理

    本博文内容参考相关博客以及<Java编程思想>整理而成,如有侵权,请联系博主. 转载请注明出处:http://www.cnblogs.com/BYRans/ PDF版下载链接:<Ja ...

  8. 100道Java基础面试题收集整理(附答案)

    不积跬步无以至千里,这里会不断收集和更新Java基础相关的面试题,目前已收集100题. 1.什么是B/S架构?什么是C/S架构 B/S(Browser/Server),浏览器/服务器程序 C/S(Cl ...

  9. stringbuilder寻找字符串位置可能存在多个 java_【面试题系列】——Java基础

    本文主要包括Java基础及面向对象相关面试题. 1,Java科普1.1 为什么安装包要分JDK和JRE?1.2 为什么Java语言是跨平台的?1.3 为什么安装完JDK后要设置环境变量?1.4 Jav ...

最新文章

  1. oracle无创建directory权限,【DIRECTORY】普通用户创建Oracle DIRECTORY数据库对象的权限需求及探索...
  2. MATLAB应用实战系列(五十一)-TXT数据的读取完美教程
  3. 实数是不是python数据类型_Python数据类型之数字(Numbers)和运算符
  4. 蓝桥杯 ADV-206 算法提高 不大的数
  5. java访问权限的控制
  6. 零基础自学SQL课程 | SQL中的日期函数大全
  7. android app安装apk,Android App更新安装APK
  8. AS更换背景主题以及背景图片
  9. 仿节奏大师java_HelloCpp 仿节奏大师Android游戏版本,只实现了击键功能,可以给大家启发. 238万源代码下载- www.pudn.com...
  10. 2017年语义理解总结(二)
  11. Win10如何设置快速锁屏?电脑怎么设置离开锁屏?
  12. 纯JS绘制的QQ LOGO
  13. 2019年最全的大数据学习大纲总结,持续更新.....
  14. 如何使用TensorRT加速深度学习推理
  15. ubuntu 18.04网络图标消失不见解决方法
  16. ECS7天训练营(新人路线)Day4----笔记
  17. #同余最短路# [51nod] 遥远的旅途
  18. 拍摄的多段视频怎么去掉声音?两种方法快速实现
  19. 黑马程序员mysql答案_干货|MySQL常见问题及答案汇总
  20. 【高等数学】一、极限和连续

热门文章

  1. FAT32文件系统--For TF卡
  2. C++ 花神游历各国
  3. 基于差分进化算法的微电网调度研究(Matlab代码实现)
  4. coreldraw x8里线段显示尺寸_CorelDRAW X8快速更换纸张类型和创建自定义的页面尺寸...
  5. 同步、异步与阻塞、非阻塞经典段子(来自网络)
  6. 前端Node.js面试题
  7. 【牛腩】LinkButton
  8. pgpool日志目录满会导致pgpool hang住 连接慢或超时
  9. 刚刚,2023中国大学评级发布!9所高校,位列最顶级!
  10. android 颜色的色值