没有唯一键的TreeMap
|
我使用TreeMap类将消息信息及其优先级存储在应用程序中。
我使用treeMap类来执行此操作,因为此类基于键值自动对元素进行排序,例如,我遇到这种情况:
enum Priority { HIGH, MEDIUM, LOW }
TreeMap<Priority,String> tMap = new TreeMap<Priority,String>();
我使用密钥(消息的优先级)根据优先级的严重性自动排序消息,但是问题是,在TreeMap中,密钥是唯一的,如果我尝试插入两个具有相同优先级的消息,则第一个消息将被覆盖... 。
如何更改此行为并禁用TreeMap的唯一约束?
是否有类似TreeMap的类允许将相同的Key放入多个元素?
没有找到相关结果
已邀请:
4 个回复
娠频摩
接口的基本不变性。 是否有类似TreeMap的类允许将相同的Key放入多个元素? 您可以将其实现为
并自己管理列表。如果(例如)您要按fifo顺序处理给定优先级的消息,则这是一个不错的选择。 另外,您可以使用3类。例如从Apache Commons Collections或Guava中获得。
马口
靛新比比催
亲奋漏