Java中的ConcurrentLinkedQueue remove()方法
ConcurrentLinkedQueue 的 remove(Object o) 方法用于从此ConcurrentLinkedQueue中删除指定元素的单个实例(如果存在)。 如果此ConcurrentLinkedQueue包含一个或多个这样的元素,则此方法将删除一个元素e,使得o.equals(e)。 如果ConcurrentLinkedQueue包含指定的元素,则remove()方法返回true,否则将返回false。
语法:
public boolean remove(Object o)
参数:
此方法接受一个参数 o ,表示要从此ConcurrentLinkedQueue中删除的元素。
返回值:
如果此ConcurrentLinkedQueue包含指定的元素并已删除,则此方法返回 true 。 以下程序演示了ConcurrentLinkedQueue的remove()方法:
示例1:
// Java程序演示ConcurrentLinkedQueue的remove()
import java.util.concurrent.*;
public class GFG {
public static void main(String[] args) {
// 创建一个ConcurrentLinkedQueue
ConcurrentLinkedQueue queue = new ConcurrentLinkedQueue();
// 向队列添加数字
queue.add(4353);
queue.add(7824);
queue.add(78249);
queue.add(8724);
// 显示现有的ConcurrentLinkedQueue
System.out.println("ConcurrentLinkedQueue:" + queue);
// 为数字78249应用remove()
boolean response = queue.remove(78249);
// 打印结果
System.out.println("删除数字78249成功:" + response);
// 显示现有ConcurrentLinkedQueue
System.out.println("更新后的ConcurrentLinkedQueue:" + queue);
}
}
输出:
ConcurrentLinkedQueue:[4353,7824,78249,8724]
删除数字78249成功:true
更新后的ConcurrentLinkedQueue:[4353,7824,8724]
示例2:
// Java程序演示ConcurrentLinkedQueue的remove()
import java.util.concurrent.*;
public class GFG {
public static void main(String[] args) {
// 创建一个ConcurrentLinkedQueue
ConcurrentLinkedQueue queue = new ConcurrentLinkedQueue();
// 将字符串添加到队列中
queue.add("Aman");
queue.add("Amar");
queue.add("Sanjeet");
queue.add("Rabi");
// 显示现有的ConcurrentLinkedQueue
System.out.println("ConcurrentLinkedQueue:" + queue);
// 在队列中使用remove()
boolean response1 = queue.remove("Aman");
// 应用remove方法后打印
System.out.println("成功删除字符串“Aman”:" + response1);
// 显示现有的ConcurrentLinkedQueue
System.out.println("更新后的ConcurrentLinkedQueue:" + queue);
// 在队列中使用remove()
boolean response2 = queue.remove("Kisan");
// 应用remove方法后打印
System.out.println("成功删除字符串“Kisan”:" + response2);
// 显示现有的ConcurrentLinkedQueue
System.out.println("更新后的ConcurrentLinkedQueue:" + queue);
}
}
输出:
ConcurrentLinkedQueue:[Aman,Amar,Sanjeet,Rabi]
成功删除字符串“Aman”:true
更新后的ConcurrentLinkedQueue:[Amar,Sanjeet,Rabi]
成功删除字符串“Kisan”:false
更新后的ConcurrentLinkedQueue:[Amar,Sanjeet,Rabi]
参考文献: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentLinkedQueue.html#remove-java.lang.Object-
极客教程