PriorityQueue<Integer> queue = new PriorityQueue<Integer>(4);
queue.add(8);
queue.add(5);
queue.add(23);
queue.add(6);
System.out.println(queue);
朋友们, Ubuntu 12.10 和 Oracle Java 1.6 和 Java 1.7 上的上述代码,打印输出为
[5, 6, 23, 8]
我相信这是错误的。这应该改为打印为[5, 6, 8, 23]
这是一个缺陷吗?还是我对优先队列的理解是错误的?
除此之外,如果我在之前或之后更改将 23 添加到 PriorityQueue 的位置,这将按预期工作。