Metoda Java ArrayList zawieraAll () sprawdza, czy arraylist zawiera wszystkie elementy określonej kolekcji.
Składnia containsAll()
metody to:
arraylist.containsAll(Collection c);
Tutaj arraylist jest obiektem ArrayList
klasy.
zawiera parametry ()
containsAll()
Sposób przyjmuje jeden parametr.
- kolekcja - sprawdza, czy wszystkie elementy kolekcji są obecne w arraylista.
zawieraZwracana wartość ()
- zwraca,
true
jeśli arraylist zawiera wszystkie elementy kolekcji - zgłasza,
ClassCastException
jeśli klasa elementów obecnych w arraylist jest niezgodna z klasą elementów w określonej kolekcji - zgłasza,
NullPointerException
jeśli kolekcja zawiera elementy null , a arraylist nie zezwala na wartości null
Uwaga : można powiedzieć, że containsAll()
metoda sprawdza, czy kolekcja jest podzbiorem listy arraylisty.
Przykład 1: Java ArrayList zawiera wszystko ()
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("Java"); languages2.add("Python"); System.out.println("ArrayList 2: " + languages2); // check if ArrayList 1 contains ArrayList 2 boolean result1 = languages1.containsAll(languages2); System.out.println("ArrayList 1 contains all elements of ArrayList 2: " + result1); // check if ArrayList 2 contains ArrayList 1 boolean result2 = languages2.containsAll(languages1); System.out.println("ArrayList 2 contains all elements of ArrayList 1: " + result2); ) )
Wynik
ArrayList 1: (JavaScript, Python, Java) ArrayList 2: (Java, Python) ArrayList 1 zawiera wszystkie elementy ArrayList 2: true ArrayList 2 zawiera wszystkie elementy ArrayList 1: false
W powyższym przykładzie utworzyliśmy dwie listy arraylistów o nazwach języki1 i języki2. Zwróć uwagę na wyrażenie,
// return true languages1.containsAll(languages2)
W tym przypadku containsAll()
metoda sprawdza, czy language1 zawiera wszystkie elementy language2. Dlatego metoda zwraca true
. Zwróć jednak uwagę na następujące wyrażenie,
// return false languages2.containsAll(languages1)
W tym przypadku containsAll()
metoda sprawdza, czy language2 zawiera wszystkie elementy language1. Dlatego powraca false
.
Uwaga : containsAll()
metoda nie jest specyficzna dla ArrayList
klasy. Klasa dziedziczy po List
interfejsie.
Przykład 2: containsAll () między Java ArrayList i 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); System.out.println("HashSet: " + primeNumbers); // check if ArrayList contains all elements of HashSet boolean result1 = numbers.containsAll(primeNumbers); System.out.println("ArrayList contains all elements of HashSet: " + result1); // check if HashSet contains all elements of ArrayList boolean result2 = primeNumbers.containsAll(numbers); System.out.println("HashSet contains all elements of ArrayList: " + result2); ) )
Wynik
ArrayList: (1, 2, 3) HashSet: (2, 3) ArrayList zawiera wszystkie elementy HashSet: true HashSet zawiera wszystkie elementy ArrayList: false
W powyższym przykładzie utworzyliśmy listę arraylistyczną o nazwie numbers i zestaw hashset o nazwie primeNumbers. Zwróć uwagę na wyrażenia,
// check if ArrayList contains HashSet // return true numbers.containsAll(primeNumbers) // check if HashSet contains ArrayList // return false primeNumbers.containsAll(numbers)
Uwaga : Możemy uzyskać wspólne elementy między ArrayList
i HashSet
przy użyciu metody retainAll () języka Java ArrayList.