Die Java ArrayList RetainAll () -Methode behält nur die Elemente in der Arrayliste bei, die auch in der angegebenen Auflistung vorhanden sind.
Alle Elemente, die in der angegebenen Sammlung nicht vorhanden sind, werden aus der Arrayliste entfernt.
Die Syntax der retainAll()
Methode lautet:
arraylist.retainAll(Collection c);
Hier ist Arraylist ein Objekt der ArrayList
Klasse.
keepAll () -Parameter
Die retainAll()
Methode verwendet einen einzelnen Parameter.
- Sammlung - Nur die in der Sammlung vorhandenen Elemente bleiben in der Arrayliste erhalten.
keepAll () Rückgabewert
true
Gibt zurück, wenn Elemente aus der Arrayliste entfernt werden- wird
ClassCastException
ausgelöst, wenn die in arraylist vorhandene Elementklasse nicht mit der Elementklasse in der angegebenen Auflistung kompatibel ist - wird
NullPointerException
ausgelöst, wenn die Arrayliste ein Nullelement enthält und die angegebene Auflistung keine Nullelemente zulässt
Beispiel 1: Java ArrayList keepAll ()
import java.util.ArrayList; class Main ( public static void main(String() args) ( // create an ArrayList ArrayList languages1 = new ArrayList(); // insert element to the ArrayList languages1.add("JavaScript"); languages1.add("Python"); languages1.add("Java"); System.out.println("ArrayList 1: " + languages1); // create another ArrayList ArrayList languages2 = new ArrayList(); // add elements to ArrayList languages2.add("English"); languages2.add("Java"); languages2.add("Python"); System.out.println("ArrayList 2: " + languages2); // retain the common element languages1.retainAll(languages2); System.out.println("Common Elements: " + languages1); ) )
Ausgabe
ArrayList 1: (JavaScript, Python, Java) ArrayList 2: (Englisch, Java, Python) Allgemeine Elemente: (Python, Java)
Im obigen Beispiel haben wir zwei Arraylisten mit den Namen sprachen1 und Sprachen2 erstellt. Beachten Sie die Linie,
languages1.retainAll(languages2);
Hier übergeben wir die arraylistischen Sprachen2 als Argument an die retainAll()
Methode. Die Methode entfernt alle Elemente aus Sprachen1, die in Sprachen2 nicht vorhanden sind. Daher bleiben nur gemeinsame Elemente erhalten.
Beispiel 2: Gemeinsame Elemente zwischen ArrayList und HashSet anzeigen
import java.util.ArrayList; import java.util.HashSet; class Main ( public static void main(String() args) ( // create an ArrayList ArrayList numbers = new ArrayList(); // add element to ArrayList numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("ArrayList: " + numbers); // create a HashSet HashSet primeNumbers = new HashSet(); // add elements to HashSet primeNumbers.add(2); primeNumbers.add(3); primeNumbers.add(5); System.out.println("HashSet: " + primeNumbers); // retain common elements in the ArrayList numbers.retainAll(primeNumbers); System.out.println("Common Elements: " + numbers); ) )
Ausgabe
ArrayList: (1, 2, 3) HashSet: (2, 3, 5) Allgemeine Elemente: (2, 3)
Im obigen Beispiel haben wir eine Arrayliste mit dem Namen numbers und ein Hashset mit dem Namen primeNumbers erstellt. Beachten Sie die Linie,
numbers.retainAll(primeNumbers);
Hier retainAll()
entfernt die Methode alle Elemente aus Zahlen, die in primeNumbers nicht vorhanden sind. Und behält nur die gemeinsamen Elemente. Daher bleiben 2 und 3 in den Arraylistenzahlen erhalten.