का उपयोग करके किसी सूची से केवल आवश्यक वस्तुओं को प्राप्त करना क्लास attrib1
, attrib2
और List<Child>
बच्चे को इसके संबंधित गेटर्स और सेटर्स के साथ मानें।जावा 8 स्ट्रीम
Child
एक अन्य वर्ग है जिसमें पांच गुण attrib1
- attrib5
इसके संबंधित गेटर्स और सेटर्स के साथ है।
अब मैंने List<Parent>
अभिभावक बनाया है। फिर मैं निम्नलिखित स्थिति के साथ List<Parent>
फ़िल्टर करना चाहता हूं: - Child.Attrib1 > 10
;
इसलिए मैंने जावा 8 स्ट्रीम द्वारा निम्न क्वेरी बनाई।
parent.stream().filter(e -> e.getChild().stream().anyMatch(c -> c.getAttrib1() > 10));
लेकिन समस्या यह है मैं हर Parent
वस्तु में सभी बच्चे मिल जाएगा है। यहां मैं केवल उन बच्चों की वस्तु को List<Child>
में प्राप्त करना चाहता हूं जो दी गई स्थिति का पालन करता है।
मुझे सूची में सभी बच्चे वस्तुओं को कैसे हटाया जाना चाहिए जो स्थिति का पालन नहीं करते हैं और नई सूची प्राप्त करते हैं।
फ्लैटमैप द्वारा, मुझे सूची –
की फ़िल्टर की गई सूची कैसे प्राप्त होगी जैसा कि मुझे आपकी आवश्यकता है कि माता-पिता की सूची में सभी बच्चों को ढूंढना है, जहां 'getAttrib1()> 10' प्राप्त करें। 'सूची' चित्र में आता है? FlatMap माता-पिता ऑब्जेक्ट्स में सभी बच्चों की धाराओं को एक एकल बाल स्ट्रीम में विलय कर रहा है। –
KDM
मेरी आवश्यकता यह है कि मुझे सूची में सभी बच्चे वस्तुओं को हटा देना चाहिए जो इस स्थिति का पालन नहीं करते हैं और नई सूची प्राप्त करते हैं। –