import java.util.Comparator;
import java.util.Queue;
import java.util.PriorityQueue;
public class PriorityQueueDemo {
public static void main(String[] args) {
//默认是从小到大排序,这边需要对排序的方法进行重载,按照从大到小来排
Queue PQ = new PriorityQueue(new Comparator() {
@Override
public int compare(Integer o1, Integer o2) {
return o2.compareTo(o1);
}
});//多态形式导入,之前多次编译报错是因为默认使用java.lang.Object下的PriorityQueue,而非java.util.PriorityQueue
PQ.add(1);
PQ.add(8);
PQ.add(3);
PQ.add(5);
System.out.println(PQ.poll());
System.out.println(PQ.poll());
PQ.add(11);
System.out.println(PQ.poll());
System.out.println(PQ.poll());
}
}
输出;
8 5 11 3



