从条件中删除"return"关键字时无用的表达式


由于方法体中存在return关键字,SonarQube刚刚将以下表达式求值为代码气味。但是,如果我删除return,IntelliJ将警告一个无用的表达式。

条件如下。

if (map.contains("numProperties")) {
if (map("numProperties").toInt >= 20)
return true
return false
}
true

这可能就是您想要的:

map.get("numProperties").forall(_.toInt >= 20)

get返回Option,如果Option为空或内容测试返回true,则在Option上调用forall返回true

保持原始形式:

if (map.contains("numProperties")) {
if (map("numProperties").toInt >= 20) {
true
} else {
false
}
} else {
true
}

最新更新