我有以下不错的一个班轮:
boolean outcome = count > 0 ? false : true;
但从sonaqube中,我得到了“删除文字“false”布尔值“solution似乎假设您可以将其重写为函数但是即使这个函数有那么简单的一行代码,把我放在同样的位置,我也不太明白怎么修复?
n9vozmp41#
问题是,您正在对已经生成boolean的操作进行 * 额外的体操 *。如果我用完整的语法写出你编写的代码:
boolean
boolean outcome; if(count > 0){ outcome = false; } else { outcome = true; }
实际上,您是在反转count > 0那就试试
count > 0
boolean outcome = !(count > 0)
甚至更好
boolean outcome = count <= 0
thtygnil2#
为了给其他人参考,我是哑巴和SonarQube在报告上述正确的,因为它做的比需要的更多。正确的代码是:
boolean outcome = count > 0;
你不需要三元语句,计数〉0的结果是一个真/假值...因此,如上所述,扭转这一结果很简单
boolean outcome = !(count > 0);
2条答案
按热度按时间n9vozmp41#
问题是,您正在对已经生成
boolean
的操作进行 * 额外的体操 *。如果我用完整的语法写出你编写的代码:
实际上,您是在反转
count > 0
那就试试
甚至更好
thtygnil2#
为了给其他人参考,我是哑巴和SonarQube在报告上述正确的,因为它做的比需要的更多。正确的代码是:
你不需要三元语句,计数〉0的结果是一个真/假值...
因此,如上所述,扭转这一结果很简单