コレクションを簡単にフィルタリングするために、Java 8ラムダをいじっていました。しかし、結果を同じステートメント内の新しいリストとして取得する簡潔な方法が見つかりませんでした。これまでの私の最も簡潔なアプローチは次のとおりです。
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
ようなメソッドがあると予想していました</p>
toList()
toSet()
変数targetLongList
を 3 行目で直接代入する方法はありますか?