小编Jua*_*chi的帖子

如何将其转换为流表达式?(使用AtomicReference)

我需要更改以下代码:

protected void checkNoDuplicateLabels( List<CompileResult> compileResult ) {
    Set<Label> infos = new HashSet<>();
    for ( AbstractTypeInfo info : infoRepo.getList() ) {
        if ( info instanceof Label ) {
            Label label = (Label) info;
            if ( infos.contains( label ) ) {
                compileResult.add( new CompileResult( Severity.FATAL, MessageFormat.format( "Duplicate label found! \n Type: '{0}' \n Language: '{1}'", label.getType(), label.getLanguage() ) ) );
            }
            infos.add( label );
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

进入一条小溪.我知道使用集合与流的一种方法是通过实现AtomicReferences,它将方法的第一行替换为:

AtomicReference<Set<Label>> infos = new AtomicReference<>( new HashSet<Label>() );
Run Code Online (Sandbox Code Playgroud)

如何使用流实现循环正在执行的相同功能?

java collections java-8 java-stream

3
推荐指数
1
解决办法
59
查看次数

标签 统计

collections ×1

java ×1

java-8 ×1

java-stream ×1