当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java ArrayList containsAll()用法及代码示例


Java ArrayList containsAll() 方法检查arraylist 是否包含指定集合的所有元素。

用法:

arraylist.containsAll(Collection c);

这里,arraylistArrayList 类的对象。

参数:

containsAll() 方法采用单个参数。

  • collection- 检查是否所有元素collection存在于数组列表中。

返回:

  • 如果 arraylist 包含 collection 的所有元素,则返回 true
  • 抛出ClassCastException如果 arraylist 中存在的元素类与指定的元素类不兼容收藏
  • 抛出NullPointerException如果collection包含空值元素和数组列表不允许空值

注意: 我们可以说containsAll()方法检查是否collection是数组列表的子集。

示例 1:Java ArrayList containsAll()

import java.util.ArrayList;

class Main {
    public static void main(String[] args) {
        // create an ArrayList
        ArrayList<String> 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<String> 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);
    }
}

输出

ArrayList 1: [JavaScript, Python, Java]
ArrayList 2: [Java, Python]
ArrayList 1 contains all elements of ArrayList 2: true
ArrayList 2 contains all elements of ArrayList 1: false

在上面的示例中,我们创建了两个名为 languages1languages2 的数组列表。注意表达式,

// return true
languages1.containsAll(languages2)

在这里,containsAll() 方法检查 languages1 是否包含 languages2 的所有元素。因此,该方法返回 true 。但是,请注意以下表达式,

// return false
languages2.containsAll(languages1)

在这里,containsAll() 方法检查 languages2 是否包含 languages1 的所有元素。因此,它返回 false

注意: 这containsAll()方法不特定于ArrayList类。该类继承自List接口。

示例 2:containsAll() 在 Java ArrayList 和 HashSet 之间

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

class Main {
    public static void main(String[] args) {
        // create an ArrayList
        ArrayList<Integer> 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<Integer> 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);
    }
}

输出

ArrayList: [1, 2, 3]
HashSet: [2, 3]
ArrayList contains all elements of HashSet: true
HashSet contains all elements of ArrayList: false

在上面的示例中,我们创建了一个名为 numbers 的数组列表和一个名为 primeNumbers 的哈希集。注意表达式,

// check if ArrayList contains HashSet
// return true
numbers.containsAll(primeNumbers)

// check if HashSet contains ArrayList
// return false
primeNumbers.containsAll(numbers)

注意: 我们可以得到它们之间的共同元素ArrayListHashSet使用ArrayList retainall方法。

相关用法


注:本文由纯净天空筛选整理自 Java ArrayList containsAll()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。