PriorityQueue的作用是什么

本篇内容主要讲解“PriorityQueue的作用是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“PriorityQueue的作用是什么”吧!

PriorityQueue使用跟普通队列一样,唯一区别是PriorityQueue会根据排序规则决定谁在队头,谁在队尾。
往队列中添加可比较的对象String :

import java.util.PriorityQueue;

public class Main {
    public static void main(String[] args) {
        PriorityQueue<Integer> q = new PriorityQueue<Integer>();
        //入列
        q.add(3);
        q.add(5);
        q.add(10);
        q.add(7);
        q.add(9);
        q.add(15);
        q.add(11);
        q.add(13);
        q.add(20);
        q.add(12);

        //出列
        System.out.println(q.poll());  //1
        System.out.println(q.poll());  //2
        System.out.println(q.poll());  //3
        System.out.println(q.poll());  //4
        System.out.println(q.poll());  //5
        System.out.println(q.poll());  //1
        System.out.println(q.poll());  //2
        System.out.println(q.poll());  //3
        System.out.println(q.poll());  //4
        System.out.println(q.poll());  //5

    }
}

观察打印结果,也是说出列时做了相关判断,将最小的值返回。默认情况下PriorityQueue使用自然排序法,最小元素先出列。

PriorityQueue的作用是什么

我们画一个图去演示查看一下:

PriorityQueue的作用是什么

在idea中调试去查看变量信息:

PriorityQueue的作用是什么

堆的数组存储要去掌握的,在idea编辑器中的存储与实际画图的数组结构相同的。

到此,相信大家对“PriorityQueue的作用是什么”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!