逻辑运算符和短路求值

简介: 逻辑运算符和短路求值

要了解短路求值就必须先了解什么是逻辑运算符。

逻辑运算符

在了解运算符之前我们必须先知道再JAVA中逻辑运算符的结果是Boolean类型的值

逻辑与“&&”

表达式1 && 表达式2

逻辑与就是只有运算符两边的表达式都为真,结果才为真

表达式1 表达式2 结果


image.png

image.png

逻辑或“||”

表达式1 || 表达式2

逻辑与就是只有当两边表达式都为假的时候,结果才为假

表达式1 表达式2 结果


image.png

image.png

逻辑非“!”

!表达式1

与,或,非三个逻辑表达式中只有非是单目运算符

当表达式1为真,结果就为假

当表达式1为假,结果就为真

表达式1 结果



短路求值

了解完逻辑运算符之后就来了解一下短路求值

  • 对于 && , 如果左侧表达式值为 false, 则表达式结果一定是 false, 无需计算右侧表达式.
  • 对于 ||, 如果左侧表达式值为 true, 则表达式结果一定是 true, 无需计算右侧表达式.

如果你想在写代码时无论如何都不出现短路求值

那么在JAVA中位运算符“& |”当它们两个两边的表达式返回值为Boolean时他们也可以充当逻辑运算符。

image.png

image.png

& 和 | 如果表达式结果为 boolean 时, 也表示逻辑运算. 但与 && || 相比, 它们不支持短路求值。

目录
相关文章
|
7天前
什么是短路表达式?
什么是短路表达式?
17 1
|
7天前
三元表达式使用
三元表达式使用
24 0
|
7天前
|
JavaScript
短路表达式
短路表达式 短路表达式
23 0
|
6月前
什么是三元表达式?
什么是三元表达式?
|
7天前
|
JavaScript 前端开发 C#
什么是三元表达式?“三元”表示什么意思?
什么是三元表达式?“三元”表示什么意思?
|
7天前
|
C语言
逻辑运算符
逻辑运算符。
20 1
|
9月前
|
算法
|
6月前
三元表达式
三元表达式
21 0
|
算法 Java C++
【27. 表达式求值(中缀表达式)】
表达式求值(中缀) **前提准备** 需要开辟`俩个栈`,一个用于`存放数字`,另一个用于`存放运算符`。 需要用到`unordered_map`用来存放`运算符的优先级`。
167 0
【27. 表达式求值(中缀表达式)】
|
PHP C#
C#(七)之逻辑运算符
算数运算符的优先级大于逻辑运算符。下面是!、 &&、 || 三个运算符的简单应用。
121 0
C#(七)之逻辑运算符