Wie filtere ich eine Collection in Java nach einer Bedingung (Prädikat)?
Hallo zusammen! Ich bin neu in Java und habe folgendes Problem: Ich habe eine Liste von `Person`-Objekten mit den Feldern `name` und `age`. Ich muss nur diejenigen erhalten, die älter als 18 Jahre sind. Ich weiß, dass ich mit einer `for`-Schleife durchgehen und passende Elemente in eine neue Liste einfügen kann, aber das sieht umständlich aus. Ich habe gehört, dass es in Java 8 Streams und Lambdas gibt, aber ich habe noch nicht verstanden, wie man sie zum Filtern von Collections verwendet.
Hier ist ein Beispiel meines Codes:
```java
List people = new ArrayList<>();
people.add(new Person("Alice", 22));
people.add(new Person("Bob", 17));
people.add(new Person("Charlie", 19));
// Wie bekomme ich eine Liste der Volljährigen?
// Bisher mache ich es so:
List adults = new ArrayList<>();
for (Person p : people) {
if (p.getAge() >= 18) {
adults.add(p);
}
}
```