PriorityBlockingQueue

public class PriorityBlockingQueueTest {

    /**
     *  有优先级顺序的阻塞队列,底层实现是数组,无边界。默认是11.
     *  构造方法可以传入一个比较器,不传的话,默认是按照字典排序比较大小
     *  向队列中插入元素用 add  offer , put 三个方法效果是等同的,因为是无边界的,put不会阻塞
     *  从队列中取出数据用 remove poll , take ,只有take方法在队列为空时会阻塞
     * @param args
     */
    public static void main(String[] args) throws InterruptedException {
        PriorityBlockingQueue<String> queue = new PriorityBlockingQueue<>(3);
        queue.add("hello1");
        queue.add("hello2");
        queue.add("hello3");
        System.out.println(queue.take());
    }
}
原文地址:https://www.cnblogs.com/moris5013/p/12046518.html