布尔值如何计算?

在本文中,我们将指出布尔是如何工作的,这意味着我们如何在程序或用例中使用布尔的功能。由于布尔值可以帮助我们做出决策,因此我们可以将该决策逻辑放入条件表达式中,例如:while循环评估或if-else决策。现在,首先让我们看一下布尔运算符,它将用于从布尔表达式生成布尔值,并最终在决策中使用该值。我们将在这里使用布尔的逻辑运算符,它们是:,&,^,!,|| ,&&,==,!= 让我们使用两个布尔变量num1和num2来使用。

布尔运算符的符号 相应符号的名称

| OR 或

& AND 和

^ XOR 异或

!NOT 非

!= NOT EQUAL 不等于

&& Short circuit AND 短路和

|| Short circuit OR 短路或

== EQUAL 相等

1.&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。

2.&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,例如,对于if(str != null && !str.equals(“”))表达式,当str为null时,后面的表达式不会执行,所以不会出现NullPointerException如果将&&改为&,则会抛出NullPointerException异常。If(x33 & ++y>0) y会增长,If(x33 && ++y>0)不会增长

3.&还可以用作位运算符,当&操作符两边的表达式不是boolean类型时,&表示按位与操作,我们通常使用0x0f来与一个整数进行&运算,来获取该整数的最低4个bit位,例如,0x31 & 0x0f的结果为0x01。

简单的说:

&是位运算,返回结果是int型

&&是逻辑运算,返回结果是boolean型

|| 按位或运算符 ,表示按位或运算,||是逻辑或算符,表示逻辑或运算。

条件操作只能操作布尔型的,而逻辑操作不仅可以操作布尔型,而且可以操作数值型的。

不同点:

对于A&B,不管a是否为假,仍然要判断B。

对于A|B,不管a是否为真,仍然要判断B。

而对于A&&B,A||B在以上情况就不会去判断B了。

java 布林运算_java11教程--布尔计算相关推荐

  1. java a运算顺序_Java中计算顺序的规则是什么?

    噜噜哒 让我说得很清楚,因为人们一直误解这一点:子表达式的求值顺序是独立结合性和优先级..关联性和优先级确定操作者被执行但是不要确定子表达式都是经过评估的.你的问题是关于子表达式都是经过评估的.考虑A ...

  2. java parameters用法_java11教程--类PKIXParameters用法

    用作PKIX CertPathValidator算法输入的参数. PKIX CertPathValidator根据PKIX认证路径验证算法使用这些参数来验证CertPath . 要实例化PKIXPar ...

  3. 《Java程序设计与数据结构教程(第二版)》学习指导

    <Java程序设计与数据结构教程(第二版)>学习指导 目录 图书简况 学习指导 第一章 绪论 第二章 数据和表达式 第三章 使用类和对象 第四章 条件和循环 第五章 编写类 第六章 图形用 ...

  4. Java位运算优化:位域、位图棋盘等

    快速小测试:如何重写下面的语句?要求不使用条件判断语句交换两个常量的值. if (x == a) x= b; else x= a; 答案: x= a ^ b ^ x; //此处变量x等于a或者等于b ...

  5. java 对数运算_Java语言 第二章 运算和语句

    1.数据运算 运算由表达式表示,表达式由运算符和运算分量组成,运算分量可以是常量.变量和方法调用Java基本运算分类图 1.1 赋值运算 1.1.1 简单赋值运算变量 = 表达式 程序执行过程: (1 ...

  6. Java基础小白入门教程-----百知教育java基础学习1---胡鑫喆

    Java基础小白入门教程(胡大大出品,彩蛋请自寻) 胡鑫喆 https://www.bilibili.com/video/BV1wE411V7Zo?from=search&seid=38511 ...

  7. Java二进制位运算、移位运算、、

    为什么80%的码农都做不了架构师?>>>    Java二进制位运算.移位运算 思考题 1.请看下面的代码段,回答a,b,c,d,e结果是多少? public static void ...

  8. python布尔类型运算_Python中布尔类型

    我们已经了解了Python支持布尔类型的数据,布尔类型只有True和False两种值,但是布尔类型有以下几种运算: 与运算:只有两个布尔值都为 True 时,计算结果才为 True. True and ...

  9. java数值运算后精度丢失问题

    最近连续俩次遇到运算后数值精度丢失问题,所以记录一下. 问题1:java计算百分比,应该得到57,可返回的就是56 在java代码中 BigDecimal progress;BigDecimal a ...

最新文章

  1. 预装Win8笔记本改重装Win7的方法
  2. springMVC数据格式转换的三种实现
  3. java怎么拦截数据库查询结果_关于mybatis拦截器,有谁知道怎么对结果集进行拦截,将指定字段查询结果进行格式化...
  4. PowerShell因为在此系统中禁止执行脚本解决方法
  5. python---用python实现选择排序
  6. springboot+jsp校园美食餐厅订餐系统
  7. UNITY游戏开发源码
  8. ipq8064 openwrt 上KGDB工作不正常
  9. 3.4 haas506 2.0开发教程-example-ads1115
  10. Day001-2021-07-29 变量定义/数据类型/基础运算 判断/循环/数组
  11. 数据流处理之乒乓操作
  12. LogBack 日志压缩产生上百G的tmp文件问题
  13. JS实现键盘移动光标
  14. 招聘海报制作可以用什么软件,有什么免费模板?
  15. Matlab进阶绘图第8期—聚类/分类散点图
  16. 图像分辨率+像素+尺寸+文件内存大小
  17. Excel替换文本内容的3种操作方法比较
  18. 比尔盖兹的十一项人生建议
  19. LeetCode——1849. 将字符串拆分为递减的连续值(Splitting a String Into Descending Consecutive Val..)[中等]——分析及代码(Java)
  20. canvas制作简单钟表

热门文章

  1. rem等于多少px?
  2. idea安装plantuml插件画流程图
  3. 详解图像二值化 函数threshold
  4. iNavFlight之MSP DJI协议飞控端请求应答
  5. 设置计算机id管理员默认密码是多少钱,路由器默认(初始)管理员登录密码是多少?...
  6. 洛谷 P1135 奇怪的电梯
  7. matplotlib绘制极坐标图 最全面总结
  8. java 刻度尺_GitHub - yhongm/ScaleView: ArcScaleView,ScaleView,刻度尺选择器,包括弧形刻度尺选择器和直尺形刻度尺选择器...
  9. E470C触摸屏的关闭
  10. STC89C52RC - 1 - 简述以及最小操作系统