Получение списка из java.util.stream.Stream в Java 8

Я играл с лямбдами Java 8, чтобы легко фильтровать коллекции. Но я не нашел краткий способ получить результат в виде нового списка в том же утверждении. Вот мой самый лаконичный подход:

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

Примеры в сети не отвечают на мой вопрос, потому что они останавливаются без создания нового списка результатов. Должен быть более лаконичный способ. Я ожидал, чтоStream у класса есть методы как,…toList()toSet()

Есть ли способ, что переменныеtargetLongList можно напрямую назначить третьей строкой?

Ответы на вопрос(12)

Ваш ответ на вопрос