Java ArrayList removeAll() 使用方法及示例 - Java教程

由网友 大卫 发布 阅读 25

Java ArrayList removeAll() 使用方法及示例 - Java教程

Java ArrayList 方法

Java ArrayList removeAll()方法从指定集合中删除ArrayList中的所有元素。

removeAll()方法的语法为:

arraylist.removeAll(Collection c);

removeAll()参数

  • collection - 集合中存在的所有元素都将从arraylist中删除。

removeAll()返回值

  •  如果从arraylist中删除元素,则返回true

  •  如果arraylist中存在的元素类与指定集合中的元素类不兼容,则抛出ClassCastException

  •  如果arraylist包含null元素并且指定的集合不允许null元素,则抛出NullPointerException

示例1:从ArrayList中删除所有元素

import java.util.ArrayList;

class Main {
    public static void main(String[] args){

        //创建 arraylist
        ArrayListlanguages = new ArrayList<>();

        //将元素添加到arraylist
        languages.add("Java");
        languages.add("JavaScript");
        languages.add("Python");
        System.out.println("编程语言: " + languages);

        //从arraylist中删除所有元素
        languages.removeAll(languages);
        System.out.println("removeAll()之后的ArrayList: " + languages);
    }
}

输出结果

编程语言: [Java, JavaScript, Python]
removeAll()之后的ArrayList: []

在上面的示例中,我们创建了一个名为languages的数组列表。arraylist存储编程语言的名称。注意这一行,

languages.removeAll(languages);

在这里,我们将ArrayList languages作为removeAll()方法的参数传递。因此,该方法从arraylist中删除所有元素。

注意:建议最好使用clear()方法从arraylist中删除所有元素。要了解更多信息,请访问Java ArrayList clear()

示例2:删除一个ArrayList中存在于另一个ArrayList中的所有元

import java.util.ArrayList;

class Main {
    public static void main(String[] args) {
        //创建 ArrayList
        ArrayListlanguages1 = new ArrayList<>();

        //在arraylist的末尾插入元素
        languages1.add("Java");
        languages1.add("English");
        languages1.add("C");
        languages1.add("Spanish");
        System.out.println("Languages1: " + languages1);

        //创建另一个arraylist
        ArrayListlanguages2 = new ArrayList<>();

        //将元素添加到arraylist
        languages2.add("English");
        languages2.add("Spanish");
        System.out.println("Languages2: " + languages2);

        //从ArrayList1中删除ArrayList2的所有元素
        languages1.removeAll(languages2);
        System.out.println("removeAll()之后的Languages1: " + languages1);
    }
}

输出结果

Languages1: [Java, English, C, Spanish]
Languages2: [English, Spanish]
removeAll()之后的Languages1: [Java, C]

在上面的示例中,我们创建了两个名为languages1和languages2的ArrayList。注意这一行,

languages1.removeAll(languages2);

在这里,removeAll()方法用于删除languages1中也存在languages2的所有那些元素。因此,English和Spanish从languages1中删除。

示例3:从ArrayList中删除也存在于HashSet中的所有元素

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

class Main {
    public static void main(String[] args) {
        //创建 ArrayList
        ArrayListnumbers = new ArrayList<>();

        //将元素添加到ArrayList
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        numbers.add(4);
        System.out.println("ArrayList: " + numbers);

        //创建 HashSet
        HashSetprimeNumbers = new HashSet<>();

        //将元素添加到HashSet
        primeNumbers.add(2);
        primeNumbers.add(3);
        System.out.println("HashSet: " + primeNumbers);

        //从ArrayList中删除HashSet的所有元素
        numbers.removeAll(primeNumbers);
        System.out.println("removeAll()之后的ArrayList: " + numbers);
    }
}

输出结果

ArrayList: [1, 2, 3, 4]
HashSet: [2, 3]
removeAll()之后的ArrayList: [1, 4]

在上面的示例中,我们创建了一个名为numbers的arraylist 和一个名为primeNumbers的哈希集合。注意这一行,

numbers.removeAll(primeNumbers);

在这里,removeAll()方法从primeNumbers中也存在的numbers中删除所有这些元素。 因此,从arraylist numbers中删除了 2 和 3。

Java ArrayList 方法

Java ArrayList addAll() Java ArrayList remove()