Java LinkedTransferQueue removeAll()方法及示例
java.util.concurrent.LinkedTransferQueue的 removeAll() 方法是Java的一个内置函数,用于从这个队列中删除所有包含在指定集合中的元素。
语法
public boolean removeAll(Collection c)
参数: 该方法接受集合c作为参数,其中包含要从这个列表中删除的元素。
返回: 如果这个列表因调用而改变,该方法返回 true。
异常: 如果这个列表包含一个空的元素,则 出现NULL指针异常 。
下面的程序说明了LinkedTransferQueue类的removeAll()函数。
程序1 :
// Java code to illustrate
// removeAll() method of LinkedTransferQueue
import java.util.concurrent.LinkedTransferQueue;
import java.util.*;
public class GFG {
public static void main(String[] args)
throws InterruptedException
{
// create object of LinkedTransferQueue
LinkedTransferQueue<String> LTQ
= new LinkedTransferQueue<String>();
// Add numbers to end of LinkedTransferQueue
// using add() method
LTQ.add("GeeksforGeeks");
LTQ.add("Geeks");
LTQ.add("Computer Science");
LTQ.add("Portal");
LTQ.add("Gfg");
// Print the Queue
System.out.println("Linked Transfer Queue : "
+ LTQ);
// Get the ArrayList to be deleted
ArrayList<String> arraylist
= new ArrayList<String>();
arraylist.add("GeeksforGeeks");
arraylist.add("Gfg");
arraylist.add("hack");
// Print ArrayList
System.out.println("ArrayList to be deleted : "
+ arraylist);
// Removing elements from the queue
// which are common to arraylist
// using removeAll() method.
LTQ.removeAll(arraylist);
// Prints the Queue
System.out.println("Linked Transfer Queue "
+ "after removal of ArrayList : "
+ LTQ);
}
}
输出:
链接传输队列 : [GeeksforGeeks, Geeks, Computer Science, Portal, Gfg]
要删除的ArrayList : [GeeksforGeeks, Gfg, hack]
删除ArrayList后的链接传输队列 : [Geeks, Computer Science, Portal]
程序2 :
// Java code to illustrate
// removeAll() method of LinkedTransferQueue
import java.util.concurrent.LinkedTransferQueue;
import java.util.*;
public class GFG {
public static void main(String[] args)
throws InterruptedException
{
// create object of LinkedTransferQueue
LinkedTransferQueue<Integer> LTQ
= new LinkedTransferQueue<Integer>();
// Add numbers to end of LinkedTransferQueue
// using add() method
LTQ.add(3);
LTQ.add(6);
LTQ.add(10);
LTQ.add(125);
LTQ.add(205);
// print the Queue
System.out.println("Linked Transfer Queue : "
+ LTQ);
// Get the ArrayList to be deleted
ArrayList<Integer> arraylist
= new ArrayList<Integer>();
arraylist.add(10);
arraylist.add(100);
arraylist.add(125);
// Print ArrayList
System.out.println("ArrayList to be deleted : "
+ arraylist);
// Removing elements from the queue
// which are common to arraylist
// using removeAll() method.
LTQ.removeAll(arraylist);
// Prints the Queue
System.out.println("Linked Transfer Queue "
+ "after removal of ArrayList : "
+ LTQ);
}
}
输出:
Linked Transfer Queue : [3, 6, 10, 125, 205]
ArrayList to be deleted : [10, 100, 125]
Linked Transfer Queue after removal of ArrayList : [3, 6, 205]
参考资料:https://docs.oracle.com/javase/9/docs/api/java/util/concurrent/LinkedTransferQueue.html#removeAll-java.util.Collection-