Java ArrayList containAll () -metoden kontrollerar om arraylistan innehåller alla element i den angivna samlingen.
Syntaxen för containsAll()
metoden är:
arraylist.containsAll(Collection c);
Här är arraylist ett objekt i ArrayList
klassen.
containsAll () Parametrar
Den containsAll()
metod tar en enda parameter.
- collection - kontrollerar om alla element i samlingen finns i arraylistan.
containsAll () Returvärde
- returnerar
true
om arraylistan innehåller alla element i samlingen - kastar
ClassCastException
om klassen av element som finns i arraylista är oförenlig med klassen av element i den angivna samlingen - kastar
NullPointerException
om samlingen innehåller null- element och arraylistan tillåter inte null- värden
Obs! Vi kan säga att containsAll()
metoden kontrollerar om samlingen är en delmängd av arraylistan.
Exempel 1: Java ArrayList containAll ()
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); ) )
Produktion
ArrayList 1: (JavaScript, Python, Java) ArrayList 2: (Java, Python) ArrayList 1 innehåller alla element i ArrayList 2: true ArrayList 2 innehåller alla element i ArrayList 1: false
I ovanstående exempel har vi skapat två matrislistor med namnet språk1 och språk2. Lägg märke till uttrycket,
// return true languages1.containsAll(languages2)
Här containsAll()
kontrollerar metoden om språk1 innehåller alla delar av språk2. Därför återgår metoden true
. Lägg dock märke till följande uttryck,
// return false languages2.containsAll(languages1)
Här containsAll()
kontrollerar metoden om språk2 innehåller alla delar av språk1. Därför återvänder den false
.
Obs : Den containsAll()
metoden är inte specifik för ArrayList
klassen. Klassen ärver från List
gränssnittet.
Exempel 2: innehållerAll () mellan Java ArrayList och 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); ) )
Produktion
ArrayList: (1, 2, 3) HashSet: (2, 3) ArrayList innehåller alla element i HashSet: true HashSet innehåller alla element i ArrayList: false
I ovanstående exempel har vi skapat en arraylista med namnen och en hashset med namnet primeNumbers. Lägg märke till uttrycken,
// check if ArrayList contains HashSet // return true numbers.containsAll(primeNumbers) // check if HashSet contains ArrayList // return false primeNumbers.containsAll(numbers)
Obs! Vi kan få de vanliga elementen mellan ArrayList
och HashSet
använda metoden Java ArrayList retainAll ().