gpt4 book ai didi

java - 当java中有位运算符时,为什么要使用逻辑运算符

转载 作者:行者123 更新时间:2023-12-03 01:40:53 24 4
gpt4 key购买 nike

我知道位运算符 &, |和 ^ 是按位运算符或逻辑运算符...取决于操作数的类型。

If the operands are integers, the operators are bitwise. If they are booleans, then the operators are logical.

那为什么还有逻辑运算符&&,||和!?我相信在某些情况下我们只能使用逻辑运算符,事实也确实如此。

那么,谁能解释一下这种情况吗?或者比按位运算有任何优势。

最佳答案

运算符 && 和 || 惰性评估。这意味着只能评估一侧。

运算符 & 和 | 急切求值,这意味着总是对双方进行求值。

当你的表达式有副作用时,这一点非常重要。

示例

x = 0;
(x++ == 0) || (x++ == 1); // x is 1

x = 0;
(x++ == 0) | (x++ == 1); // x is 2

关于java - 当java中有位运算符时,为什么要使用逻辑运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18288465/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com