我在代码中使用HashMultiMap。我的HashMultiMap结构就像


Key1-> Value11-> Value12-> Value13 ....

Key2-> Value21-> Value22 ....


现在,我想如果key1具有相同的值(例如:value11 = value12),则仅保留(或不存储)该值的一个副本(例如:仅保留value11或不存储value12)。谁能帮助我如何以有效(更快)的方式实现这一目标。

最佳答案

根据HashMultiMap Javadoc,您为此选择了正确的MultiMap:


多重地图不会存储重复的键值对。添加等于现有键值对的新键值对无效。


现在,您只需要确保在值上正确实现了equals()(和hashCode())。我不认为您应该担心这样做的更快方式。 HashMultiMap应该非常有效地实现。

07-24 09:48