Java ArrayList retainAll ()

Java ArrayList retainAll () -metoden bevarer kun de elementer i arraylisten, der også er til stede i den angivne samling.

Og alle de elementer, der ikke er til stede i den angivne samling, fjernes fra arraylisten.

Metodens syntaks retainAll()er:

 arraylist.retainAll(Collection c);

Her er arraylist et objekt i ArrayListklassen.

retainAll () Parametre

Den retainAll()metode tager et enkelt parameter.

  • samling - kun de elementer, der er til stede i samlingen, bevares i arraylisten.

retainAll () Returværdi

  • returnerer, truehvis elementer fjernes fra arraylisten
  • kaster, ClassCastExceptionhvis klassen af ​​elementer, der er til stede i arraylisten, er uforenelig med klassen af ​​elementer i den angivne samling
  • kaster, NullPointerExceptionhvis arraylisten indeholder null-element, og den angivne samling ikke tillader null-elementer

Eksempel 1: 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); ) )

Produktion

 ArrayList 1: (JavaScript, Python, Java) ArrayList 2: (engelsk, Java, Python) Almindelige elementer: (Python, Java)

I ovenstående eksempel har vi oprettet to arraylister med navnet sprog1 og sprog2. Bemærk linjen,

 languages1.retainAll(languages2);

Her sender vi arraylistens sprog2 som et argument til retainAll()metoden. Metoden fjerner alle elementer fra sprog1, der ikke findes på sprog2. Derfor bevares kun fælles elementer.

Eksempel 2: Vis almindelige elementer mellem ArrayList og HashSet

 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); ) )

Produktion

 ArrayList: (1, 2, 3) HashSet: (2, 3, 5) Almindelige elementer: (2, 3)

I ovenstående eksempel har vi oprettet en arraylist med navne numre og et hashsæt med navnet primeNumbers. Bemærk linjen,

 numbers.retainAll(primeNumbers);

Her retainAll()fjerner metoden alle disse elementer fra tal, der ikke er til stede i primtal. Og holder kun de fælles elementer. Derfor bevares 2 og 3 i arraylistenumrene.

Interessante artikler...