Pobieranie listy z java.util.stream.Stream w Javie 8

Bawiłem się z Java 8 lambdami, aby łatwo filtrować kolekcje. Ale nie znalazłem zwięzłego sposobu na uzyskanie wyniku jako nowej listy w ramach tej samej instrukcji. Oto moje najbardziej zwięzłe podejście do tej pory:

List<Long> sourceLongList = Arrays.asList(1L, 10L, 50L, 80L, 100L, 120L, 133L, 333L);
List<Long> targetLongList = new ArrayList<>();
sourceLongList.stream().filter(l -> l > 100).forEach(targetLongList::add);

Przykłady w sieci nie odpowiedziały na moje pytanie, ponieważ zatrzymują się bez generowania nowej listy wyników. Musi być bardziej zwięzły sposób. Spodziewałbym się, żeStream klasa ma metody takie jaktoList(), toSet(),…

Czy istnieje sposób, w jaki zmiennetargetLongList można bezpośrednio przypisać trzecią linię?

questionAnswers(12)

yourAnswerToTheQuestion