Java Collection.removeAll()

从集合中删除全部含在指定合集中的元素.

定义

boolean removeAll​(Collection<?> c)

参数

参数类型参数名称参数描述
Collectionc包含了想要删除了元素的集合
类型参数E胡歌包含的元素的类型

返回值

如果调用了此方法后集合发生了变化则返回 true, 否则返回 false.

抛出的异常

ClassCastException 如果当前集合中某个或多个元素的类型与指定的集合不兼容

NullPointerException 如果该集合包含一个 null 元素,而指定的集合不允许包含 null 元素,或者指定的集合为 null

UnsupportedOperationException 如果集合不支持 removeAll() 操作

示例

从集合中删除包含在指定合集中的元素的示例

package com.yi21.collection;

import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Set;

public class Yi21CollectionRemoveAll {

    public static void main(String[] args) {
        

        ArrayList<String> list = new ArrayList<>();
        list.addAll(List.of("Hello", "World", "21yi", "World", "Java"));
        System.out.println("对象 list 是否是一个集合? " + (list instanceof Collection));
        
        Set<String> set = Set.of("Not", "World", "Java");
        System.out.println("对象 set 是否是一个集合? " + (list instanceof Collection));

        System.out.println("是否成功从 list 删除包含在了 set 中的元素? " + list.removeAll(set));
        System.out.println("list 中剩余的元素:");
        list.forEach(System.out::println);

    }

}

执行结果为 :

对象 list 是否是一个集合? true
对象 set 是否是一个集合? true
是否成功从 list 删除包含在了 set 中的元素? true
list 中剩余的元素:
Hello
21yi