📌  相关文章
📜  Java中的 CopyOnWriteArraySet removeIf() 方法及示例

📅  最后修改于: 2022-05-13 01:54:45.810000             🧑  作者: Mango

Java中的 CopyOnWriteArraySet removeIf() 方法及示例

CopyonWriteArraySet 方法的removeIf()方法从这个 CopyOnWriteArraySet 中移除满足指定条件的元素。

句法:

public boolean removeIf (Predicate filter)

参数:此方法接受一个强制参数过滤器,该过滤器是谓词值,基于从该集合中删除哪些元素。

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

异常:如果指定的谓词过滤器为空,则此方法抛出NullPointerException

下面的程序说明了 CopyOnWriteArrayList 类的 removeIf()函数:

方案一:

// Java Program to illustrate the CopyOnWriteArraySet
// removeIf() 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 ArrSet
            = new CopyOnWriteArraySet();
  
        // Add elements
        ArrSet.add(10);
        ArrSet.add(20);
        ArrSet.add(30);
        ArrSet.add(40);
        ArrSet.add(50);
        ArrSet.add(60);
        ArrSet.add(70);
        ArrSet.add(80);
        ArrSet.add(90);
  
        // print CopyOnWriteArraySet
        System.out.println("CopyOnWriteArraySet: "
                           + ArrSet);
  
        // if a number in the set is
        // divisible by 3, then remove it
        ArrSet.removeIf(number -> number % 3 == 0);
  
        // print updated CopyOnWriteArraySet
        System.out.println("Updated CopyOnWriteArraySet: "
                           + ArrSet);
    }
}
输出:
CopyOnWriteArraySet: [10, 20, 30, 40, 50, 60, 70, 80, 90]
Updated CopyOnWriteArraySet: [10, 20, 40, 50, 70, 80]

方案二:

// Java Program to illustrate the CopyOnWriteArraySet
// removeIf() 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 ArrSet
            = new CopyOnWriteArraySet();
  
        // Add elements
        ArrSet.add("GeeksforGeeks");
        ArrSet.add("GFG");
        ArrSet.add("Geeks");
        ArrSet.add("Gfg");
  
        // print CopyOnWriteArraySet
        System.out.println("CopyOnWriteArraySet: "
                           + ArrSet);
  
        try {
  
            // if a number in the set is
            // divisible by 3, then remove it
            // This will throw NullPointerException
            ArrSet.removeIf(null);
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}
输出:
CopyOnWriteArraySet: [GeeksforGeeks, GFG, Geeks, Gfg]
java.lang.NullPointerException