A Java ArrayList retainAll () metódus csak azokat az elemeket őrzi meg a tömblistában, amelyek szintén szerepelnek a megadott gyűjteményben.
És mindazok az elemek, amelyek nem szerepelnek a megadott gyűjteményben, eltávolításra kerülnek a tömblistából.
A retainAll()
módszer szintaxisa :
arraylist.retainAll(Collection c);
Itt az arraylist az ArrayList
osztály objektuma .
retainAll () paraméterek
A retainAll()
módszer egyetlen paramétert vesz fel.
- gyűjtemény - csak a gyűjteményben található elemek maradnak meg a tömblistában.
retainAll () visszatérési érték
- visszatér,
true
ha az elemeket eltávolítják a tömblistáról - dob,
ClassCastException
ha a tömblistában szereplő elemek osztálya nem kompatibilis a megadott gyűjtemény elemosztályával - dob,
NullPointerException
ha a tömblista null elemet tartalmaz, és a megadott gyűjtemény nem engedélyez null elemeket
1. példa: Java ArrayList retainAll ()
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); ) )
Kimenet
ArrayList 1: (JavaScript, Python, Java) ArrayList 2: (angol, Java, Python) Közös elemek: (Python, Java)
A fenti példában létrehoztunk két nyelv1 és nyelv2 nevű tömblistát. Figyelje meg a sort,
languages1.retainAll(languages2);
Itt átadjuk a arraylist languages2-t argumentumként a retainAll()
metódusnak. A módszer minden olyan elemet eltávolít a nyelvekből1, amelyek nincsenek a nyelvekben2. Ezért csak a közös elemeket tartják meg.
2. példa: Mutassa be az ArrayList és a HashSet közötti gyakori elemeket
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); ) )
Kimenet
ArrayList: (1, 2, 3) HashSet: (2, 3, 5) Közös elemek: (2, 3)
A fenti példában létrehoztunk egy tömblistát, amelynek neve számok, és egy hashset nevű primeNumbers. Figyelje meg a sort,
numbers.retainAll(primeNumbers);
Itt a retainAll()
módszer eltávolítja mindazokat az elemeket azoktól a számoktól, amelyek nincsenek a primeNumbers-ben. És csak a közös elemeket tartja meg. Ezért 2 és 3 megmarad a tömblista számokban.