当我查看我的同事的代码时,我遇到了下面的代码,这让我想到了
if((a == d && b < c) == false){
}
但我看到人们更频繁地使用 ! 运算符,而不是检查布尔值 == false
我没有在代码中看到任何错误,但只是想知道哪种方式更好。我在谷歌搜索了一个答案,但我没有得到任何有用的信息。
答案 0 :(得分:3)
确实有人会看到==布尔值。
BAD STYLE GOOD STYLE
c == false <=> !c
c != true
c == true <=> c
c != false
这可能是由于!
无法识别(not
关键字更清晰)。
但总的来说,它似乎是一个感知问题:思考&#34; c是假的&#34;,在布尔值中添加true和false一个特殊的(类似值)含义。
它是坏样式,因为它显示缺少心理否定跳跃,只是可能是不擅长布尔逻辑的标志。如:
if ((a == d && b < c) == false) {
if (!(a == d && b < c)) {
if (a != d || b >= c) {
P.S。
有争议,虽然c == true
客观上是绝对多余的,c != false
有两个否定之处。
答案 1 :(得分:0)
没有性能差异,你可以使用你认为更好的东西。 C程序员大多使用== false或== true。我个人用!。
答案 2 :(得分:0)
boolean
多余使用的重点是什么? ?
所以要检查我们可以使用的true
条件
if(a == d && b < c){
}
现在你意识到我们可以使用
了 if(!(a == d && b < c)){
}
表示不是true
条件。