Phi*_*hil 5 java functional-programming stream java-stream
我想使用以下流:
List<String> result = myArr
.stream()
.filter(line -> !"foo".equals(line))
.collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
但是,一旦我准备好收集最多100个元素,就停止过滤.如何在不过滤所有和调用的情况下实现此目的subList(100, result.size())?
您可以使用limit 后 filter:
List<String> result = myArr
.stream()
.filter(line -> !"foo".equals(line))
.limit(100)
.collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
这将在过滤后找到100个项目后停止流(limit是短路流操作).