Java मधील ArrayList removeAll() पद्धत योग्य ArrayList मधून सर्व घटक काढून टाकत नाही , जसे त्याचे नाव सुचवू शकते. तुम्हाला या ऑपरेशनची आवश्यकता असल्यास, ArrayList clear() पद्धत वापरा. clear() च्या विपरीत , removeAll() पद्धत इतर संग्रहात समाविष्ट असलेल्या दिलेल्या सूचीमधून सर्व आयटम काढून टाकते.
removeAll() वाक्यरचना आणि घोषणा
पद्धत वाक्यरचना येथे आहे:
boolean removeAll(Collection<?> c)
जेथे c एक संग्रह आहे ज्यामध्ये या सूचीमधून काढले जाणारे घटक आहेत. कॉलच्या परिणामी ही यादी बदलल्यास ही पद्धत सत्य परत येईल. तसेच तो अपवाद देखील टाकू शकतो: ClassCastException — जर या सूचीतील घटकाचा वर्ग निर्दिष्ट संग्रह NullPointerException शी विसंगत असेल — जर सूचीमध्ये शून्य घटक असेल आणि निर्दिष्ट संग्रह शून्य घटकांना परवानगी देत नसेल, किंवा निर्दिष्ट संग्रह शून्य असेल तर
removeAll() कोड उदाहरण
समजा तुमच्या सोशल नेटवर्कवर फ्रेंड लिस्ट आहे. बरं, आता ही नेहमीची गोष्ट आहे. तसेच, असे म्हणूया की तुम्ही एक सावध आहात, आणि तुमचे शत्रू तुमच्या सोशल नेटवर्क मित्रांपैकी आहेत की नाही याची पर्वा न करता तुमच्या सर्व दुष्टांना विशेष शत्रू यादीत टाका. तुम्ही तुमच्या सर्व हितचिंतकांची मित्र यादी साफ करण्याचे ठरवले आहे. removeAll () पद्धत यास नक्कीच मदत करेल:
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 (collection.values()) किंवा की (removeAll (collection.keySet()) सह . कल्पना करूया की आमच्याकडे एक आमच्या मित्रांमधील सर्व मुलींच्या नावांसह हॅशमॅप , आणि आम्हाला फ्रेंडलिस्टमध्ये फक्त मुले सोडायची आहेत(मला माहित नाही की याची गरज का असू शकते, परंतु तुम्हाला कधीच माहित नाही). जुन्या फ्रेंड लिस्टसह आपल्या उदाहरणाकडे परत जाऊ या, मुलींचा HasMap तयार करा आणि ज्या मुलींची नावे आमच्या हॅशमॅपच्या मूल्यांमध्ये लिहिलेली आहेत त्या सर्व मुलींना मित्र यादीतून काढून टाका .
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 clear() पद्धत वापरण्याची आवश्यकता आहे. हे आहे, परंतु अर्थातच तुम्ही यासाठी removeAll() पद्धत देखील वापरू शकता. हे कसे करायचे याचा अंदाज तुम्ही आधीच लावला असेल:
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);
}
}
removeAll() पद्धतीच्या व्याख्येनुसार आम्हाला आउटपुटमध्ये अपवाद मिळाला आहे:
माझी जुनी मित्र यादी: [Alex, Ivy, Victor, Peter, Lenny, Olly, Stu, Scott, Olivia] थ्रेड "मुख्य" java.lang.NullPointerException मध्ये अपवाद
अधिक वाचन: |
---|
GO TO FULL VERSION