在Java中编写布尔表达式的首选方法是什么

Tim*_*thy 7 java boolean coding-style

我总是写这样的布尔表达式:

if (!isValid) {
  // code
}
Run Code Online (Sandbox Code Playgroud)

但我的新雇主坚持以下风格:

if (false == isValid) {
  // code
}
Run Code Online (Sandbox Code Playgroud)

一种风格是首选,还是标准?

Mar*_*ers 10

我更喜欢第一种风格,因为我更自然地阅读.看到第二种风格是非常不寻常的.

有些人可能更喜欢第二种替代方案的一个原因:

if (isValid == false) { ... }
Run Code Online (Sandbox Code Playgroud)

是后者你不小心写了一个=而不是==然后你分配给isValid而不是测试它,但首先你得到一个编译错误.

但是你的第一个建议是这个问题甚至都不是问题,所以这是另一个选择第一个问题的理由.

  • 我认为这是订单逆转的原因."if(false = isValid)"是一个错误. (2认同)

Mic*_*rdt 8

绝对是第一个.第二个背叛了对表达和价值观的本质缺乏理解,作为编码标准的一部分,它意味着雇主希望雇用非常无能的程序员 - 而不是好兆头.


Rom*_*man 8

每个人都认识到这个片段:

if (isValid.toString().lenght() > 4) {
   //code
}
Run Code Online (Sandbox Code Playgroud)

我认为你的第二个例子看的是同一个方向.