Java CopyOnWriteArraySet removeAll()方法及示例

Java CopyOnWriteArraySet removeAll()方法及示例

CopyonWriteArraySet方法的 removeAll() 方法会移除这个CopyOnWriteArraySet中所有存在于指定集合中的元素。也就是说,在两个集合中都有的元素会从这个CopyOnWriteArraySet中移除。

语法

public boolean removeAll(Collection<E> c)

参数: 该方法接受一个参数c,它是包含要从这个集合中删除的元素的集合。

返回值: 如果CopyOnWriteArraySet被改变,该方法返回一个布尔值,例如true。否则,该方法返回false。

异常: 该方法会抛出以下异常。

  • ClassCastException :如果这个集合中的元素的类别与指定的集合不兼容。
  • NullPointerException :如果这个集合包含一个空元素,而指定的集合不允许空元素,或者指定的集合为空。

下面的程序说明了CopyOnWriteArrayList类的removeAll()函数。

程序1 :

// Java Program to illustrate the CopyOnWriteArraySet
// removeall() method in Java
  
import java.util.concurrent.CopyOnWriteArraySet;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create object of CopyOnWriteArraySet
        CopyOnWriteArraySet<Integer> ArrSet
            = new CopyOnWriteArraySet<Integer>();
  
        // Add elements
        ArrSet.add(10);
        ArrSet.add(20);
        ArrSet.add(30);
        ArrSet.add(50);
  
        // print CopyOnWriteArraySet
        System.out.println("CopyOnWriteArraySet: "
                           + ArrSet);
  
        // create object of ArrayList
        ArrayList<Integer> Arrlist
            = new ArrayList<Integer>();
        // add elements
        Arrlist.add(10);
        Arrlist.add(30);
        Arrlist.add(40);
  
        // print ArrayList
        System.out.println("ArrayList: " + Arrlist);
  
        // removing the common elements from
        // the CopyOnWriteArraySet using removeAll()
        System.out.println("Elements removed "
                           + "from CopyOnWriteArraySet: "
                           + ArrSet.removeAll(Arrlist));
  
        // print updated CopyOnWriteArraySet
        System.out.println("Updated CopyOnWriteArraySet: "
                           + ArrSet);
    }
}

输出。

CopyOnWriteArraySet: [10, 20, 30, 50]
ArrayList: [10, 30, 40]
Elements removed from CopyOnWriteArraySet: true
Updated CopyOnWriteArraySet: [20, 50]

程序2: 显示NullpointerException

// Java Program to illustrate the CopyOnWriteArraySet
// removeall() method in Java
  
import java.util.concurrent.CopyOnWriteArraySet;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create object of CopyOnWriteArraySet
        CopyOnWriteArraySet<Integer> ArrSet
            = new CopyOnWriteArraySet<Integer>();
  
        // Add elements
        ArrSet.add(10);
        ArrSet.add(20);
        ArrSet.add(30);
        ArrSet.add(50);
  
        // print CopyOnWriteArraySet
        System.out.println("CopyOnWriteArraySet: "
                           + ArrSet);
  
        try {
  
            // removing the null from
            // the CopyOnWriteArraySet using removeAll()
            // This will throw NullPointerException
  
            System.out.println("Elements removed "
                               + "from CopyOnWriteArraySet: "
                               + ArrSet.removeAll(null));
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}

输出。

CopyOnWriteArraySet: [10, 20, 30, 50]
java.lang.NullPointerException

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程