草庐IT

PriorityQueues

全部标签

java - PriorityQueues 中的 compareTo 和 equals

我对所有“如果c对S施加的顺序与equals不一致,排序集(或排序映射)将表现异常”感到有点困惑。Javadoc中的警告。我什至不确定我需要的是PriorityQueue...我的情况是这样的:我有一个带有整数时间戳和其他一些字段的类事件。我正在寻找一个数据结构,我可以在其中插入这些事件并按时间戳对事件进行排序。不同的事件可以有相同的时间戳,所以-如果我理解正确的话-compareTo和equals会不一致。我的第一个方法是让Event实现Comparable并像这样提供compareTo:publicintcompareTo(事件e){返回this.timestamp-e.getTi