gpt4 book ai didi

java - 没有唯一键的 TreeMap

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:01:20 25 4
gpt4 key购买 nike

我使用 TreeMap 类来存储消息信息及其在我的应用程序中的优先级。我使用了一个 treeMap 类来做这件事,因为这个类会根据键值自动对元素进行排序,例如我有这种情况:

enum Priority { HIGH, MEDIUM, LOW }
TreeMap<Priority,String> tMap = new TreeMap<Priority,String>();

我使用键(消息的优先级)根据优先级严重性自动排序消息,但问题是在 TreeMap 中键是唯一的,然后如果我尝试插入两条具有相同优先级的消息,第一个被覆盖....

如何更改此行为并禁用 TreeMap 上的唯一约束?

是否有像 TreeMap 这样的类允许为多个元素放置相同的 Key?

最佳答案

How can i change this behaviour and disable unique constraint on TreeMap?

你不能。键的唯一性是 Map 的基本不变量界面。

Is there a class like TreeMap that allow to put the same Key for multiple element ?

您可以将其实现为 Map<Priority,List<String>>并自己管理列表。如果(例如)您想按先进先出顺序处理给定优先级的消息,这是一个不错的选择。

或者,您可以使用 MultiMap类(class);例如来自 Apache commons collectionsGuava .

关于java - 没有唯一键的 TreeMap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6235272/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com