Метод containsAll класса ArrayList в Java

Java ArrayList Java ArrayList

Метод containsAll() используется для проверки, содержит ли arraylist все элементы указанной коллекции.

Синтаксис метода containsAll():

arraylist.containsAll(Collection c);

Примечание:arraylist — это объект класса ArrayList.

Описание параметров:

  • collection - параметр collection.

Возвращаемое значение

Возвращает true, если динамический массив содержит все элементы коллекции.

Выбрасывает ClassCastException, если элементы, присутствующие в arraylist, несовместимы с элементами в указанной коллекции.

Выбрасывает NullPointerException, если коллекция содержит элементы null, а arraylist не допускает null-значения.

Примечание:Это можно понять так: метод containsAll() проверяет, является ли коллекция подмножеством динамического массива.

Пример

В следующем примере показано, как использовать containsAll:

Пример

import java.util.ArrayList;
class Main {
    public static void main(String[] args){

        // Создать динамический массив
        ArrayList<String> sites = new ArrayList<>();
       
        sites.add("Google");
        sites.add("Example");
        sites.add("Taobao");

        System.out.println("ArrayList 1: " + sites);

        // Создать другой динамический массив
        ArrayList<String> sites2 = new ArrayList<>();

        // Добавить элементы в динамический массив
        sites2.add("Example");
        sites2.add("Google");
        System.out.println("ArrayList 2: " + sites2);

        // Проверить, содержит ли динамический массив 1 динамический массив 2
        boolean result1 = sites.containsAll(sites2);
        System.out.println("ArrayList 1 contains all elements of ArrayList 2: " + result1);

        // Проверить, содержит ли массив 2 массив 1
        boolean result2 = sites2.containsAll(sites);
        System.out.println("ArrayList 2 содержит все элементы ArrayList 1: " + result2);
    }
}

Вывод вышеприведённой программы:

ArrayList 1: [Google, Example, Taobao]
ArrayList 2: [Example, Google]
ArrayList 1 包含了 ArrayList 2 的所有元素: true
ArrayList 2 包含了 ArrayList 1 的所有元素: false

В приведенном выше примере мы создали два динамических массива с именами sites и sites2.

Обратите внимание на эти строки:

// 返回 true
sites.containsAll(sites2);

// 返回 false
sites2.containsAll(sites)

Метод containsAll() проверяет, содержит ли sites все элементы sites2. Поскольку элементы содержатся, он возвращает true.

Метод containsAll() проверяет, содержит ли sites2 все элементы sites. Поскольку элементы не содержатся, он возвращает false.

containsAll() между Java ArrayList и HashSet

Пример

import java.util.ArrayList;
import java.util.HashSet;

class Main {
    public static void main(String[] args) {
        // Создать массив
        ArrayList<Integer> numbers = new ArrayList<>();

        // Вставить элементы в массив
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        System.out.println("ArrayList: " + numbers);

        // Создать HashSet
        HashSet<Integer> primeNumbers = new HashSet<>();

        // Добавить элементы в HashSet
        primeNumbers.add(2);
        primeNumbers.add(3);
        System.out.println("HashSet: " + primeNumbers);

        // Проверить, содержит ли ArrayList все элементы HashSet
        boolean result1 = numbers.containsAll(primeNumbers);
        System.out.println("Содержит ли ArrayList все элементы HashSet: " + result1);

        // Проверить, содержит ли HashSet все элементы ArrayList
        boolean result2 = primeNumbers.containsAll(numbers);
        System.out.println("Содержит ли HashSet все элементы ArrayList: " + result2);
    }
}

Вывод вышеприведённой программы:

ArrayList: [1, 2, 3]
HashSet: [2, 3]
ArrayList 是否 HashSet 中的所有元素: true
HashSet 是否 ArrayList 中的所有元素: false

В приведенном выше примере мы создали ArrayList с именем numbers и HashSet с именем primeNumbers.

Java ArrayList Java ArrayList

Другие расширения