Comment filtrer une collection en Java selon une condition (prédicat) ?
Bonjour à tous ! Je suis débutant en Java et j’ai rencontré un problème : j’ai une liste d’objets `Person` avec les champs `name` et `age`. Je dois obtenir uniquement ceux qui ont plus de 18 ans. Je sais qu’on peut utiliser une boucle `for` et ajouter les éléments correspondants dans une nouvelle liste, mais cela semble lourd. J’ai entendu dire que dans Java 8, il y a les streams et les lambdas, mais je n’ai pas encore compris comment les appliquer pour filtrer des collections.
Voici un exemple de mon code :
```java
List people = new ArrayList<>();
people.add(new Person("Alice", 22));
people.add(new Person("Bob", 17));
people.add(new Person("Charlie", 19));
// Comment obtenir la liste des majeurs ?
// Pour l’instant, je fais comme ça :
List adults = new ArrayList<>();
for (Person p : people) {
if (p.getAge() >= 18) {
adults.add(p);
}
}
```