SonarQube:仅按条件调用方法
以下代码部分在SonarQube上提出了一个主要错误:“仅有条件地调用方法”。
我应该如何解决这个问题?
if(us != null){
logger.info("Log this: {}", us.toString());
}
以下代码部分在SonarQube上提出了一个主要错误:“仅有条件地调用方法”。
我应该如何解决这个问题?
if(us != null){
logger.info("Log this: {}", us.toString());
}
对 的调用是冗余的,无论配置的日志级别如何,都将调用方法。您只应作为参数传递给,而不使用语句。us.toString()
toString()
us
info
if
logger.info("Log this: {}", us);
正如问题的评论所述,另一个工作答案是:
if(logger.isInfoEnabled() && us != null){
logger.info("Log this: {}", us.toString());
}