大多数时候,我更喜欢这样写:
if(isWelcome() == true){}
if(isWelcome() == false){}
而不是这个
if(isWelcome()){}
if(!isWelcome()){}
因为我觉得它更容易阅读(但我确实理解它没有意义)。
我想知道是否有关于这种做法的共同协议。大多数开发人员做什么?而且我想知道编译器是否正在进行额外的比较,或者它是否理解它是无用的。
大多数时候,我更喜欢这样写:
if(isWelcome() == true){}
if(isWelcome() == false){}
而不是这个
if(isWelcome()){}
if(!isWelcome()){}
因为我觉得它更容易阅读(但我确实理解它没有意义)。
我想知道是否有关于这种做法的共同协议。大多数开发人员做什么?而且我想知道编译器是否正在进行额外的比较,或者它是否理解它是无用的。
可读性很重要,添加单词并不总能提高可读性。虽然这
if(isWelcome() == false){}
可能比这更具可读性
if(!isWelcome()){}
对于不熟悉什么的人!做这个
if(isWelcome()){}
实际上比这更具可读性
if(isWelcome() == true){}
因为现在您已经引入了没有信息价值的“干扰词”,并增加了您的眼睛需要扫描以了解正在发生的事情的区域。您应该争取完全传达程序员意图的最少代码。
要真正回答您的问题,我会说大多数程序员会使用较短的版本。没有经验的程序员倾向于使用“冗长”的版本。
如果你使用像 Resharper 这样的工具,你会得到一个提示,使用 isWelcome() == true 是多余的。编译器可以选择优化比较,所以我不会太担心。