Java Set removeAll()方法及示例

Java Set removeAll()方法及示例

java.util.Set 接口的 removeAll() 方法用于从这个集合中删除其包含在指定集合中的所有元素。

语法

public boolean removeAll(Collection c)

参数: 该方法接受集合c作为参数,包含要从这个集合中移除的元素。

返回值: 如果这个集合在调用后发生了变化,该方法返回true。

异常: 如果这个集合包含一个空元素,而指定的集合不允许空元素(可选),或者指定的集合是空的,这个方法会抛出 NullPointerException

下面是说明removeAll()方法的例子。

例1 :

// Java program to demonstrate
// removeAll() method for Integer value
  
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv) throws Exception
    {
  
        try {
            // Creating object of Set
            Set<Integer> set1 = new HashSet<Integer>();
  
            // Populating set1
            set1.add(1);
            set1.add(2);
            set1.add(3);
            set1.add(4);
            set1.add(5);
  
            // print set1
            System.out.println("Set before removeAll() operation : "
                               + set1);
  
            // Creating another object of Set
            Set<Integer> set2 = new HashSet<Integer>();
            set2.add(1);
            set2.add(2);
            set2.add(3);
  
            // print set2
            System.out.println("Collection Elements to be removed : "
                               + set2);
  
            // Removing elements from set
            // specified in set2
            // using removeAll() method
            set1.removeAll(set2);
  
            // print set1
            System.out.println("Set after removeAll() operation : "
                               + set1);
        }
  
        catch (NullPointerException e) {
            System.out.println("Exception thrown : " + e);
        }
    }
}

输出:

Set before removeAll() operation : [1, 2, 3, 4, 5]
Collection Elements to be removed : [1, 2, 3]
Set after removeAll() operation : [4, 5]

例2: 对于NullPointerException .

// Java program to demonstrate
// removeAll() method for Integer value
  
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv) throws Exception
    {
        try {
  
            // Creating object of Set
            Set<Integer> set1 = new HashSet<Integer>();
  
            // Populating set1
            set1.add(1);
            set1.add(2);
            set1.add(3);
            set1.add(4);
            set1.add(5);
  
            // print set1
            System.out.println("Set before removeAll() operation : "
                               + set1);
  
            // Creating another object of Set<Integer>
            Set<Integer> set2 = null;
  
            // print set2
            System.out.println("Collection Elements to be removed : "
                               + set2);
  
            System.out.println("\nTrying to pass "
                               + "null as a specified element\n");
  
            // Removing elements from set
            // specified in set2
            // using removeAll() method
            set1.removeAll(set2);
  
            // print set1
            System.out.println("Set after removeAll() operation : "
                               + set1);
        }
  
        catch (NullPointerException e) {
            System.out.println("Exception thrown : " + e);
        }
    }
}

输出:

Set before removeAll() operation : [1, 2, 3, 4, 5]
Collection Elements to be removed : null

Trying to pass null as a specified element

Exception thrown : java.lang.NullPointerException

参考资料 : https://docs.oracle.com/javase/7/docs/api/java/util/Set.html#removeAll(java.util.Collection)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程