Metóda Java ArrayList containsAll () kontroluje, či zoznam polí obsahuje všetky prvky zadanej kolekcie.
Syntax containsAll()
metódy je:
arraylist.containsAll(Collection c);
Arraylist je tu objektom ArrayList
triedy.
containsAll () parametre
containsAll()
Metóda preberá jeden parameter.
- kolekcia - skontroluje, či sú v poli všetky prvky kolekcie.
containsAll () návratová hodnota
- vráti,
true
ak zoznam skladieb obsahuje všetky prvky kolekcie - hodí,
ClassCastException
ak je trieda prvkov prítomných v poli nezlučiteľná s triedou prvkov v zadanej kolekcii - hodí,
NullPointerException
ak kolekcia obsahuje nulové prvky a zoznam polí neumožňuje nulové hodnoty
Poznámka : Môžeme povedať, že containsAll()
metóda kontroluje, či je kolekcia podmnožinou poľa.
Príklad 1: Java ArrayList containsAll ()
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); ) )
Výkon
ArrayList 1: (JavaScript, Python, Java) ArrayList 2: (Java, Python) ArrayList 1 obsahuje všetky prvky ArrayList 2: true ArrayList 2 obsahuje všetky prvky ArrayList 1: false
Vo vyššie uvedenom príklade sme vytvorili dva zoznamy polí pomenované jazyky1 a jazyky2. Všimnite si výraz,
// return true languages1.containsAll(languages2)
Tu containsAll()
metóda skontroluje, či jazyky1 obsahujú všetky prvky jazykov2. Preto sa metóda vráti true
. Všimnite si však nasledujúci výraz,
// return false languages2.containsAll(languages1)
Tu containsAll()
metóda kontroluje, či jazyky2 obsahujú všetky prvky jazykov1. Preto sa vracia false
.
Poznámka : containsAll()
Metóda nie je špecifická pre ArrayList
triedu. Trieda dedí z List
rozhrania.
Príklad 2: containsAll () Medzi Java ArrayList a 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); ) )
Výkon
ArrayList: (1, 2, 3) HashSet: (2, 3) ArrayList obsahuje všetky prvky HashSet: true HashSet obsahuje všetky prvky ArrayList: false
Vo vyššie uvedenom príklade sme vytvorili zoznam skladieb s názvom number a hash s názvom primeNumbers. Všimnite si výrazy,
// check if ArrayList contains HashSet // return true numbers.containsAll(primeNumbers) // check if HashSet contains ArrayList // return false primeNumbers.containsAll(numbers)
Poznámka : Medzi elementy ArrayList
a HashSet
pomocou metódy Java ArrayList keepAll () môžeme získať bežné prvky .