如何遍历PriorityQueue?

for (Event e : pq)

不会按优先级顺序进行迭代。

while(!pq.isEmpty()){

Event e = pq.poll();

}

这可以工作,但可以清空队列。

回答:

从Javadocs

方法中提供的Iterator

iterator()不能保证以任何特定顺序遍历PriorityQueue的元素。如果您需要有序遍历,请考虑使用Arrays.sort(pq.toArray())

可能还有其他等效的机制。

以上是 如何遍历PriorityQueue? 的全部内容, 来源链接: utcz.com/qa/429470.html

回到顶部