相关疑难解决方法(0)

为什么我们通常使用`||`而不是`|`,有什么区别?

我只是想知道为什么我们通常||在两个布尔值之间使用逻辑OR 而不是按位OR |,尽管它们都运行良好.

我的意思是,看看以下内容:

if(true  | true)  // pass
if(true  | false) // pass
if(false | true)  // pass
if(false | false) // no pass
Run Code Online (Sandbox Code Playgroud)
if(true  || true)  // pass
if(true  || false) // pass
if(false || true)  // pass
if(false || false) // no pass
Run Code Online (Sandbox Code Playgroud)

我们可以用|而不是||吗?同样的事情&&&.

java bitwise-operators

215
推荐指数
10
解决办法
9万
查看次数

布尔运算符的差异:&vs &&和| vs ||

我知道规则&&,||但是什么是&|?请以一个例子向我解释这些.

java boolean-logic bitwise-operators logical-operators

104
推荐指数
5
解决办法
18万
查看次数

存在非短路逻辑运算符的原因

当与使用boolean的操作数,&|成为逻辑每运营商的JLS第15.22.2.不像&&||,然而,这些不短路; 他们总是评估双方.我有一个愚蠢的问题:当我们拥有更高效的短路逻辑运算符(,)时&,为什么效率较低的非短路逻辑运算符(,|)仍然存在?我的意思是,与短路逻辑运算符相比,非短路逻辑运算符的实际用途是什么?换句话说,总是通过使用非短路逻辑运算符来评估双方的用法是什么?&&||

java logical-operators

33
推荐指数
2
解决办法
1万
查看次数