📅  最后修改于: 2023-12-03 15:16:26.019000             🧑  作者: Mango
在Java中,PriorityBlockingQueue是一个线程安全的优先级队列,实现了BlockingQueue接口,并且底层是通过堆来实现的。
PriorityBlockingQueue中的clear()方法用于清空队列中的所有元素。在调用该方法之后,队列将不包含任何元素。
public void clear()
该方法没有参数。
该方法没有返回值。
import java.util.concurrent.*;
public class Example {
public static void main(String[] args) {
PriorityBlockingQueue<Integer> queue = new PriorityBlockingQueue<>();
queue.add(2);
queue.add(1);
queue.add(3);
System.out.println("Queue before clear: " + queue);
queue.clear();
System.out.println("Queue after clear: " + queue);
}
}
输出结果:
Queue before clear: [1, 2, 3]
Queue after clear: []
调用clear()方法将会移除队列中的所有元素,因此需要慎重使用。如果在多线程环境下使用该方法,需要注意其他线程正在操作队列时可能会出现一些异常情况。