Sonarqube 主要问题“重构代码以便使用流管道”

Jam*_*mes 4 java java-stream sonarqube

我在 java 17 项目中工作,我有以下方法:

  public List<String> getUserroles(List<UserRoleDTO> userRoles) {

    return userRoles.stream().filter(UserRoleDTO::getRight).map(UserRoleDTO::getActionId)
      .toList();
  }
Run Code Online (Sandbox Code Playgroud)

我的构建失败,因为 sonarqube 提示主要问题“重构代码以便使用流管道”。

关于如何调整我的代码以使其符合声纳的任何建议。

此致

Ale*_*nko 6

方法在Java分析器的规则Stream.toList()中已经提到了。而最新的SonarQube版本9.5根据其描述应该支持Java 16。

首先,尝试更新 SonarQube。

如果它不能解决问题,您可以toList()用替换collect(Collectors.toList())