这直接来自Java Docs:
此类及其迭代器实现了 Collection 和 Iterator 接口的所有可选方法。方法 iterator() 中提供的 Iterator 不能保证以任何特定顺序遍历优先级队列的元素。如果您需要有序遍历,请考虑使用 Arrays.sort(pq.toArray())。
所以基本上,我的 PriorityQueue 工作正常,但是使用它自己的内置 toString() 方法将它打印到屏幕上导致我看到这个异常在运行,并且想知道是否有人可以解释为什么它是迭代器提供(并使用内部)不按自然顺序遍历 PriorityQueue?