Phil:
Je veux utiliser les flux comme:
List<String> result = myArr
.stream()
.filter(line -> !"foo".equals(line))
.collect(Collectors.toList());
mais arrêter le filtrage dès que je maximum de 100 éléments prêts à être collectés. Comment puis - je parvenir sans filtrer tous et appeler subList(100, result.size())
?
ernest_k:
Vous pouvez utiliser limit
après filter
:
List<String> result = myArr
.stream()
.filter(line -> !"foo".equals(line))
.limit(100)
.collect(Collectors.toList());
Cela arrêtera le flux après 100 articles ont été trouvés après affinement de la recherche ( limit
est une opération de flux court-circuit).