重构代码以便使用此流管道

Refactor the code so this stream pipeline is used

通过重构代码在 SonarQube 中发现一个错误,以便此流管道用于以下代码片段。

Stream<ContextData> stream = Globals.contextMap.values().stream()
.sorted(Comparator.comparing(ContextData::getName));

我们如何解决这个问题?

sonarQube 提供的评论是, 中间流方法不应闲置。

但是在这一行之后我还有一些其他用途,

String contextName = parameterParser.getTagsWithValue().get(FilterParameter.CONTEXT_NAME);
if (contextName != null) {
    stream = stream.filter(entity -> entity.getName() !=null && entity.getName().equalsIgnoreCase(contextName));
}

您应该关闭流:

例如。我把结果收集到一个列表

List<ContextData>contextDataList = Globals.contextMap.values().stream()
.sorted(Comparator.comparing(ContextData::getName))
.collect(Collectors.toList());