What is the shortest way to express "get new List B from List A where condition" via a Java 8 lambda?
Say I have List<Integer> a = Arrays.asList(1, 2, 3, 4, 5)
and I want a new List, B, where the value is > 3.
I've read through the new Collections Streams API, but I'm not convinced I have found the best way to do this, and don't want to taint the question with what is probably my less than perfect solution.
a.stream().filter(x -> x > 3).collect(Collectors.toList());
It can be written in a further shorter form in JDK 16 which includes a toList() method directly on Stream instances.
a.stream().filter(x -> x > 3).toList();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With