两种if语句写法哪种更易读
第一种:if (!statement1 || statement2 || ...)
第二种:if (!(statement1 && !statement2 && ...))
解释:有若干个条件,要求每个条件要么为真要么为假(废话),而且这些条件之间是或的关系。
举例,下面两种写法哪种更容易理解:
if (!str.isEmpty() || a > 0 || a < b)
VSif (!(str.isEmpty() && a <= 0 && a >= b))
注意:不要说分成多个if来写,我知道分开写更清晰。我只是想知道如果写在一条语句中的话哪种更容易理解
。谢谢。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
都一样。
容易理解与否和开发人员的主观思维有关。
不过第一种要短些,看起来更简洁。也更符合常规思维
个人 认为按照 业务逻辑来讲第一种更容易理解,按照 代码逻辑第二种更容易理解。
建议用一个容易懂的变量去保存if中的表达式
当然这是题外话,我想的是 如果b是一个大于等于0的数的话 a>0||a<b 就不需要判断了,我觉得把一类的条件用一个括号括起来应该比较清晰,或者多用几个变量存一下,再综合这几个条件,这样就兼顾分开写的清晰也避免了多个if语句的麻烦。
第一种,多一个括号就多一层元算,楼主或许可以试一下速度