[英] Retrieving a List from a java.util.stream.Stream in Java 8
我在玩Java8lambdas,以便轻松地收集过滤.但是我没有找到一种简明的方法来将结果作为同一语句中的新列表进行检索.以下是我到目前为止最简明的方法:
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);
网上的示例没有回答我的问题,因为它们没有生成新的结果列表就停止了.一定有更简明的方法.我本以为第Stream
个类具有如下方法:toList()
、toSet()
、…
有没有办法让变量targetLongList
直接由第三行赋值?