Java में कलेक्शन को शर्त (प्रेडिकेट) के अनुसार कैसे फ़िल्टर करें?
सभी को नमस्ते! मैं Java में नया हूँ और मुझे ऐसी समस्या का सामना करना पड़ा: मेरे पास `Person` ऑब्जेक्ट्स की एक सूची है जिसमें `name` और `age` फ़ील्ड हैं। मुझे केवल उन्हीं लोगों को प्राप्त करना है जो 18 वर्ष से अधिक उम्र के हैं। मुझे पता है कि `for` लूप का उपयोग करके उपयुक्त एलिमेंट्स को एक नई सूची में जोड़ा जा सकता है, लेकिन यह बोझिल लगता है। मैंने सुना है कि Java 8 में streams और lambdas आए हैं, लेकिन अभी तक मैं समझ नहीं पाया हूँ कि कलेक्शन को फ़िल्टर करने के लिए उन्हें कैसे लागू किया जाए।
यहाँ मेरे कोड का उदाहरण है:
```java
List people = new ArrayList<>();
people.add(new Person("Alice", 22));
people.add(new Person("Bob", 17));
people.add(new Person("Charlie", 19));
// वयस्कों की सूची कैसे प्राप्त करें?
// अभी मैं ऐसा कर रहा हूँ:
List adults = new ArrayList<>();
for (Person p : people) {
if (p.getAge() >= 18) {
adults.add(p);
}
}
```