Java中CopyOnWriteArrayList removeIf()方法及实例

Java中CopyOnWriteArrayList removeIf()方法及实例

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

语法

public boolean removeIf (Predicate<E> filter)

参数: 该方法接受一个强制参数filter,它是基于哪些元素被从这个List中移除的谓词值。

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

异常: 如果指定的Predicate过滤器为空,该方法会抛出 NullPointerException

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

// Java Program to illustrate the CopyOnWriteArrayList
// removeIf() method in Java
  
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create object of CopyOnWriteArrayList
        CopyOnWriteArrayList<Integer> ArrLis
            = new CopyOnWriteArrayList<Integer>();
  
        // Add elements
        ArrLis.add(2);
        ArrLis.add(3);
        ArrLis.add(4);
        ArrLis.add(7);
        ArrLis.add(6);
        ArrLis.add(9);
  
        // print CopyOnWriteArrayList
        System.out.println("CopyOnWriteArrayList: "
                           + ArrLis);
  
        // if a number in the List is
        // divisible by 3, then remove it
        ArrLis.removeIf(number -> number % 3 == 0);
  
        // print updated CopyOnWriteArrayList
        System.out.println("Updated CopyOnWriteArrayList: "
                           + ArrLis);
    }
}

输出。

CopyOnWriteArrayList: [2, 3, 4, 7, 6, 9]
Updated CopyOnWriteArrayList: [2, 4, 7]
// Java Program to illustrate the CopyOnWriteArrayList
// removeIf() method in Java
  
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create object of CopyOnWriteArrayList
        CopyOnWriteArrayList<String> ArrLis
            = new CopyOnWriteArrayList<String>();
  
        // Add elements
        ArrLis.add("GeeksforGeeks");
        ArrLis.add("GFG");
        ArrLis.add("Geeks");
        ArrLis.add("Gfg");
  
        // print CopyOnWriteArrayList
        System.out.println("CopyOnWriteArrayList: "
                           + ArrLis);
  
        try {
  
            // This will throw NullPointerException
            ArrLis.removeIf(null);
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}

输出。

CopyOnWriteArrayList: [GeeksforGeeks, GFG, Geeks, Gfg]
java.lang.NullPointerException

参考资料: https://docs.oracle.com/javase/9/docs/api/java/util/concurrent/CopyOnWriteArrayList.html#removeIf-java.util.function.Predicate-

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程