为什么键入HashMap不能重复

时间:2015-09-30 12:54:17

标签: java dictionary data-structures collections

我知道哈希映射是如何工作的。我们不能在Hashmap中使用重复键。我想知道Sun人员使用的逻辑背后的逻辑。如何编码我们无法在HashMap中存储重复的密钥。

2 个答案:

答案 0 :(得分:2)

这是Map interface

合同的一部分
  

将键映射到值的对象。地图不能包含重复的键;每个键最多可以映射一个值。

如果某个键有多个值,Map.get(key)会返回什么?

答案 1 :(得分:1)

HashMap是一种可以保存键值对的数据结构。此数据结构实现Map

来自javadoc

  

地图不能包含重复的键;每个键最多可以映射一个值。

可以使用其键直接检索值,因此不可能有更多值与同一个键相关联。

可以使多个键指向相同的值。

如果您需要一个不同的数据结构,其中多个值与同一个键相关联,您可以使用具有Multimap

概念的Guava等库

注意:使用标准地图可以创建Map<MyKey, List>,您可以将列表与键相关联。因此,您还可以将多个值添加到该密钥,并将其存储在关联列表中。