Java CopyOnWriteArrayList .retainAll()方法及示例
Java中的 Java.util.concurrent.CopyOnArrayList .retainAll() 方法用于仅保留列表中包含在特定集合中的元素。
语法
public boolean retainAll(Collection col)
参数: 该方法接受一个强制性参数 col ,其类型为集合。这是要保留在这个向量中的元素集合。
返回类型: 如果调用的结果是改变了列表,该方法返回一个 布尔值 true,否则返回false。
异常: 如果指定的集合是空的,该方法会抛出一个NullPointerException。
下面的程序说明了Java中CopyOnArrayList的retainAll()方法。
程序1: 该程序涉及整数类型的CopyOnArraylist retainAll()方法。
// Java Program to illustrate CopyOnArrayList
// retainAll() method
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// create object of CopyOnWriteArrayList
CopyOnWriteArrayList<Integer> ArrLis1
= new CopyOnWriteArrayList<Integer>();
// Add elements
ArrLis1.add(34);
ArrLis1.add(66);
ArrLis1.add(72);
ArrLis1.add(10);
// print CopyOnWriteArrayList
System.out.println("CopyOnWriteArrayList1: "
+ ArrLis1);
// create object of CopyOnWriteArrayList
CopyOnWriteArrayList<Integer> ArrLis2
= new CopyOnWriteArrayList<Integer>();
// Add elements
ArrLis2.add(10);
ArrLis2.add(66);
ArrLis2.add(97);
// print CopyOnWriteArrayList
System.out.println("CopyOnWriteArrayList2: "
+ ArrLis2);
// Applying the function
ArrLis2.retainAll(ArrLis1);
// print CopyOnWriteArrayLists
System.out.println("After applying retainAll()"
+ " method on ArrLis2");
System.out.println("CopyOnWriteArrayList1: "
+ ArrLis1);
System.out.println("CopyOnWriteArrayList2: "
+ ArrLis2);
}
}
输出。
CopyOnWriteArrayList1: [34, 66, 72, 10]
CopyOnWriteArrayList2: [10, 66, 97]
After applying retainAll() method on ArrLis2
CopyOnWriteArrayList1: [34, 66, 72, 10]
CopyOnWriteArrayList2: [10, 66]
程序2: 该程序涉及到字符串类型的CopyOnArraylist retainAll()方法。
// Java Program to illustrate CopyOnArrayList
// retainAll() method
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
CopyOnWriteArrayList<String> ArrLis1
= new CopyOnWriteArrayList<String>();
// Add elements
ArrLis1.add("geeks");
ArrLis1.add("shaan");
ArrLis1.add("gfg");
ArrLis1.add("programming");
// print CopyOnWriteArrayList
System.out.println("CopyOnWriteArrayList1: "
+ ArrLis1);
// create object of CopyOnWriteArrayList
CopyOnWriteArrayList<String> ArrLis2
= new CopyOnWriteArrayList<String>();
// Add elements
ArrLis2.add("geeks");
ArrLis2.add("gfg");
ArrLis2.add("qwe");
// print CopyOnWriteArrayList
System.out.println("CopyOnWriteArrayList2: "
+ ArrLis2);
// Applying the function
ArrLis2.retainAll(ArrLis1);
// print CopyOnWriteArrayLists
System.out.println("After applying retainAll()"
+ " method on ArrLis2");
System.out.println("CopyOnWriteArrayList1: "
+ ArrLis1);
System.out.println("CopyOnWriteArrayList2: "
+ ArrLis2);
}
}
输出。
CopyOnWriteArrayList1: [geeks, shaan, gfg, programming]
CopyOnWriteArrayList2: [geeks, gfg, qwe]
After applying retainAll() method on ArrLis2
CopyOnWriteArrayList1: [geeks, shaan, gfg, programming]
CopyOnWriteArrayList2: [geeks, gfg]
极客教程