【发布时间】:2013-11-06 10:58:00
【问题描述】:
Java 文档说: 创建一个具有默认初始容量 (11) 的 PriorityQueue,它根据元素的自然排序对其进行排序。
但是当我写一些这样的测试时:
public class Test {
public static void main (String a[]) {
Queue<Integer> queue = new PriorityQueue<Integer>();
for (int i = 1; i <= 20; i++) {
queue.offer(i);
}
System.out.println(queue);
Queue<Integer> queue2 = new PriorityQueue<Integer>();
for (int i = 20; i >= 1; i--) {
queue2.offer(i);
}
System.out.println(queue2);
}
}
我得到以下输出:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
[1, 2, 7, 4, 3, 10, 8, 11, 5, 12, 13, 19, 15, 16, 9, 20, 14, 17, 6, 18]
看起来好像两个队列具有相同的内容,它们的内容没有得到相同的顺序?
【问题讨论】:
标签: java