
के साथ संस्करण 8 के जावा, दर्ज किए गए एक नई विधि, प्रकार के लिए उपलब्ध संग्रह. यह विधि है removeif(), जो के रूप में स्वीकार करता है पैरामीटर एक विधेय (विधेय) जो निर्धारित करता है हालत कि चाहिए निकाल दिया को तत्वों संग्रह में.
एक परिणाम के रूप में, रिटर्न एक बूलियन जो देता है सच घटना है कि आइटम हटा दिया गया है, ओ झूठी अन्यथा.
मान लीजिए हम प्रकार का एक संग्रह है स्टैक (स्टैक) के चेन (स्ट्रिंग) और हम चाहते हैं हटाएँ उन चेन कि मिलो निश्चित शर्त:
1 2 3 4 5 6 7 8 | Collection<String> misPalabras = new Stack<>(); misPalabras.add( "Prueba" ); misPalabras.add( "de" ); misPalabras.add( "uso" ); misPalabras.add( "nuevo" ); misPalabras.add( "metodo" ); misPalabras.removeIf ( s -> s.contains("ue") ); |
इस कोड बनाएगा एक प्रकार स्टैक जंजीरों का संग्रह और हटाएँ उन तत्वों जिसका चेन हो सबस् ट्रिंग ‘यूरोपीय संघ‘. इस मामले में, हटाए गए आइटम ‘परीक्षण‘ और ‘नई‘.
ES महत्वपूर्ण कि तनाव नहीं सभी संग्रह वे तत्वों के उन्मूलन का समर्थन. यदि आप इसे समर्थन नहीं करते, यह उपज जाएगा एक अपवाद प्रकार UnsupportedOperationException करने के लिए कोशिश में समस्याग्रस्त तत्व को हटाने के लिए. एक इन संग्रह की है, उदाहरण के लिए, ArrayList:
1 2 | Collection<String> misPalabras = Arrays.asList( "Prueba", "de", "uso", "nuevo", "metodo" ); misPalabras.removeIf( s -> s.contains("ue") ); |
इस अवसर पर, यह शुभारंभ करेंगे एक अपवाद के बाद से विधि Arrays.asList() प्रकार के एक ArrayList देता है java.utils.Arrays.ArrayList, जो का है केवल पढ़ने के लिए और निश्चित आकार, इसके अलावा अन्य आम तौर पर इस्तेमाल किया जा प्रकार java.util.ArrayList, जो है संशोधन योग्य.
