我只是在编写带有相当长的属性名称的if语句,并且遇到了这个问题。
假设我们有一个if语句,如下所示:
if(_someViewModelNameThatIsLong.AnotherPropertyINeedToCheck == someValue &&
!_someViewModelNameThatIsLong.ThisIsABooleanPropertyThatIsImportant)
{
//Do something
}
第二个属性是布尔类型,像
if(boleanValue == true)
有没有更好的方法来强调否定然后放在!
前面。在我看来,在阅读代码时可以很容易地对此进行监督,并且可能会导致调试问题
7
将条件提取到具有有意义名称的方法中。
—
Joachim Sauer
...或将取反的值分配给具有有意义名称的变量,然后在if条件中使用它。
—
scrwtp
+1 @JoachimSauer所说的,如果可能的话,将该方法放在要查询的对象上。在这种情况下,可以用以下方法封装整个条件:
—
MattDavey 2013年
_someViewModelNameThatIsLong
我通常要做的一般事情是在否定词的两边各加一个空格,以使其更明显。
—
Svish
if( ! something)
vsif(!something)