CodeGym /Java Blog /अनियमित /जावा में ArrayList removeAll () विधि
John Squirrels
स्तर 41
San Francisco

जावा में ArrayList removeAll () विधि

अनियमित ग्रुप में प्रकाशित
जावा में ArrayList removeAll() विधि सभी तत्वों को उचित ArrayList से नहीं हटाती है , जैसा कि इसके नाम से पता चलता है। यदि आपको इस ऑपरेशन की आवश्यकता है, तो ArrayList स्पष्ट () विधि का उपयोग करें। स्पष्ट () के विपरीत , रिमूवअल () विधि किसी अन्य संग्रह में निहित सूची से सभी वस्तुओं को हटा देती है।

removeAll() सिंटैक्स और घोषणा

यहाँ विधि सिंटैक्स है:

boolean removeAll(Collection<?> c)
जहाँ c एक संग्रह है जिसमें इस सूची से निकाले जाने वाले तत्व शामिल हैं। यदि कॉल के परिणामस्वरूप यह सूची बदली जाती है तो यह विधि सही हो जाती है। साथ ही यह अपवादों को फेंक सकता है: ClassCastException - यदि इस सूची के किसी तत्व का वर्ग निर्दिष्ट संग्रह के साथ असंगत है NullPointerException - यदि सूची में एक अशक्त तत्व है और निर्दिष्ट संग्रह अशक्त तत्वों की अनुमति नहीं देता है, या यदि निर्दिष्ट संग्रह शून्य है

निकालें सभी() कोड उदाहरण

मान लीजिए कि आपके सोशल नेटवर्क पर एक मित्र सूची है। खैर, अभी के लिए यह सामान्य बात है. इसके अलावा, मान लें कि आप एक सावधान व्यक्ति हैं, और अपने सभी शुभचिंतकों को एक विशेष शत्रु सूची में दर्ज करें, भले ही आपके शत्रु आपके सामाजिक नेटवर्क मित्रों में हों या न हों। आपने अपने सभी शुभचिंतकों की मित्र सूची को साफ़ करने का निर्णय लिया है। रिमूवअल () विधि निश्चित रूप से इसमें मदद करेगी:

import java.util.ArrayList;
import java.util.List;

public class RemoveAll2Example {
  
       public static void main(String[] args) {

           
           List<String> friendList = new ArrayList<String>();

           // use add() method to add friends into your friend list
           friendList.add("Alex");
           friendList.add("Ivy");
           friendList.add("Victor");
           friendList.add("Peter");
           friendList.add("Lenny");
           friendList.add("Olly");
           friendList.add("Stu");
           friendList.add("Scott");
           friendList.add("Olivia");

           System.out.println("My old friend list: "+ friendList);

           //create and add elements to foe list 
           List<String> foeList = new ArrayList<String>();

           foeList.add("Ben");
           foeList.add("Scott");
           foeList.add("Chuck");
           foeList.add("Olly");
           foeList.add("Sam");
           System.out.println("All my enemies: "+ foeList);

           //remove all foeList elements from friendList list if they exist
           friendList.removeAll(foeList);
           System.out.println("new friend List without foes: "+ friendList);
       }
   }
आउटपुट है:
मेरी पुरानी मित्र सूची: [एलेक्स, आइवी, विक्टर, पीटर, लेनी, ओली, स्टु, स्कॉट, ओलिविया] मेरे सभी दुश्मन: [बेन, स्कॉट, चक, ओली, सैम] नए मित्र सूची बिना शत्रु के: [एलेक्स, आइवी, विक्टर, पीटर, लेनी, स्टु, ओलिविया]
जैसा कि आप देख सकते हैं, विधि ने आपके दुश्मनों ओली और स्कॉट को हटा दिया। आपकी मित्र सूची में आपके दुश्मन बेन, चक और सैम नहीं थे। आपने शायद देखा है कि रिमूवअल () विधि घोषणा के अनुसार आप अपनी सूची से न केवल किसी अन्य सूची के मूल्यों को हटा सकते हैं, बल्कि एक यादृच्छिक संग्रह से भी हटा सकते हैं। चलिए हैश मैप के साथ एक उदाहरण लेते हैं । इस मामले में आपको स्पष्ट रूप से इंगित करने की आवश्यकता है कि आप उन रिकॉर्ड्स को हटाना चाहते हैं जो मेल खाते हैं, उदाहरण के लिए, मानों (removeAll (संग्रह.मान ()) या कुंजियों (removeAll (संग्रह.कीसेट ()) के साथ । आइए कल्पना करें कि हमारे पास एक है। हमारे दोस्तों के बीच सभी लड़कियों के नाम के साथ हैश मैप , और हमें फ्रेंडलिस्ट में केवल लड़कों को छोड़ने की जरूरत है(मुझे नहीं पता कि इसकी आवश्यकता क्यों हो सकती है, लेकिन आप कभी नहीं जानते)। आइए पुरानी फ्रेंड लिस्ट के साथ अपने उदाहरण पर वापस जाएं, एक गर्ल्स हैसमैप बनाएं और फ्रेंड लिस्ट से उन सभी लड़कियों को हटा दें जिनके नाम हमारे हैश मैप के मूल्यों में लिखे गए हैं ।

import java.util.*;

public class RemoveAll2Example {
  
       public static void main(String[] args) {

          // create an empty array list and full it up using Java 9 Factory Methods  in one line
List<String> friendList= new ArrayList<>(List.of("Alex", "Ivy", "Victor", "Peter", "Lenny", "Olly", "Stu", "Scott", "Olivia"));

           System.out.println("My old friend list: "+ friendList);

           // Creating hashMap with girls keys and names also using using Java 9 Factory Methods   
           Map<Integer, String> girls = new HashMap<>(Map.of(1, "Olly", 2, "Olivia", 3, "Loe", 4, "Ivy"));
           friendList.removeAll(girls.values());
           System.out.println("boys only friendList: " + friendList);
       }
   }
यहाँ आउटपुट है:
मेरी पुरानी मित्र सूची: [एलेक्स, आइवी, विक्टर, पीटर, लेनी, ओली, स्टु, स्कॉट, ओलिविया] केवल लड़कों की मित्र सूची: [एलेक्स, विक्टर, पीटर, लेनी, स्टु, स्कॉट]

कुछ विशेष मामले

इस लेख की शुरुआत में मैंने लिखा था कि इसके सभी मूल्यों को सूची से हटाने के लिए, आपको ArrayList स्पष्ट () विधि का उपयोग करने की आवश्यकता है। यह है, लेकिन निश्चित रूप से आप इसके लिए रिमूवअल () विधि का भी उपयोग कर सकते हैं। आप शायद पहले ही अनुमान लगा चुके हैं कि यह कैसे करना है:

myList.RemoveAll (myList);
आइए एक उदाहरण देते हैं। सोशियोपैथी के अनुकूल, आइए अपनी पूरी मित्र सूची को खाली करें:

 import java.util.*;

public class RemoveAll2Example {
  
       public static void main(String[] args) {

           // create an empty array list and full it up using  Java 9 Factory Methods  in one line
           List<String> friendList= new ArrayList<>(List.of("Alex", "Ivy", "Victor", "Peter", "Lenny", "Olly", "Stu", "Scott", "Olivia"));
           System.out.println("My old friend list: "+ friendList);

           friendList.removeAll(friendList);
           System.out.println("my new empty friendlist...:" + friendList);
       }
   }
यहाँ आउटपुट है:
केवल लड़कों की मित्र सूची: [एलेक्स, विक्टर, पीटर, लेनी, स्टू, स्कॉट] मेरी नई खाली मित्र सूची...:[]
कम से कम आइए अपने ArrayList से अशक्त संग्रह तत्वों को निकालने का प्रयास करें :

import java.util.*;

public class RemoveAll2Example {
  
       public static void main(String[] args) {

           List<String> friendList = new ArrayList<>(List.of("Alex", "Ivy", "Victor", "Peter", "Lenny", "Olly", "Stu", "Scott", "Olivia"));
           System.out.println("My old friend list: "+ friendList);

           // we are happy not to have foes 
           List<String> foeList = null;
          
           //trying to remove all foeList elements from friendList list 
            friendList.removeAll(foeList);
            System.out.println("my new friendlist:" + friendList);
       }
   }
निकालें सभी() विधि परिभाषा के अनुसार हमें आउटपुट में अपवाद मिला है:
मेरी पुरानी मित्र सूची: [एलेक्स, आइवी, विक्टर, पीटर, लेनी, ओली, स्टु, स्कॉट, ओलिविया] थ्रेड में अपवाद "मुख्य" java.lang.NullPointerException
टिप्पणियां
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION