Java ArrayList retainAll () -menetelmä säilyttää matriisiluettelossa vain ne elementit, jotka ovat myös määritetyssä kokoelmassa.
Ja kaikki ne elementit, joita ei ole määritetyssä kokoelmassa, poistetaan taulukosta.
Menetelmän syntaksi retainAll()
on:
arraylist.retainAll(Collection c);
Tässä arraylist on ArrayList
luokan kohde.
retainAll () -parametrit
retainAll()
Menetelmä ottaa yhden parametrin.
- kokoelma - vain ne kokoelmassa olevat elementit säilytetään taulukkoluettelossa.
retainAll () palautusarvo
- palaa,
true
jos elementit poistetaan taulukosta - heittää,
ClassCastException
jos taulukkoluettelossa olevien elementtien luokka ei ole yhteensopiva määritetyn kokoelman elementtien luokan kanssa - heittää,
NullPointerException
jos taulukko sisältää null-elementin ja määritetty kokoelma ei salli null-elementtejä
Esimerkki 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); ) )
Tuotos
ArrayList 1: (JavaScript, Python, Java) ArrayList 2: (englanti, Java, Python) Yleiset elementit: (Python, Java)
Yllä olevassa esimerkissä olemme luoneet kaksi taulukkoa, joiden nimi on languages1 ja languages2. Huomaa rivi,
languages1.retainAll(languages2);
Tässä välitetään arraylist-kielet2 argumentiksi retainAll()
menetelmälle. Menetelmä poistaa kaikki elementit kieliltä1, joita ei ole kielillä2. Siksi vain yhteiset elementit säilytetään.
Esimerkki 2: Näytä ArrayListin ja HashSetin väliset yhteiset elementit
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); ) )
Tuotos
ArrayList: (1, 2, 3) HashSet: (2, 3, 5) Yleiset elementit: (2, 3)
Yllä olevassa esimerkissä olemme luoneet taulukot, joiden nimi on numerot ja hashset, jonka nimi on primeNumbers. Huomaa rivi,
numbers.retainAll(primeNumbers);
Tässä retainAll()
menetelmä poistaa kaikki ne elementit numeroista, joita ei ole primeNumbersissa. Ja vain pitää yhteiset elementit. Täten 2 ja 3 säilytetään taulukkoluettelossa.