Finding Elements

The now-familiar elegant methods to traverse and transform collections will not directly help pick elements from a collection. The filter method is designed for that purpose.

From a list of names, let’s pick the ones that start with the letter N. Since there may be zero matching names in the list, the result may be an empty list. Let’s first code it using the old approach.

collections/fpij/PickElements.java
 
final​ ​List​<​String​> startsWithN = ​new​ ​ArrayList​<​String​>();
 
for​(​String​ name : friends) {
 
if​(name.startsWith(​"N"​)) {
 
startsWithN.add(name);
 
}
 
}

That’s a chatty piece of code for a simple task. We created a variable and initialized it to an empty collection. Then we looped through the collection, looking ...

Get Functional Programming in Java now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.