如何阻止HashMap覆盖密钥的先前值?

时间:2016-07-26 20:10:00

标签: java hashmap

使用我的代码,新值会覆盖先前存储的值,而不是相同的密钥。

这是我的代码:

HashMap<String, String> meMap = new HashMap<String, String>();
meMap.put(p.getName(), selState);

2 个答案:

答案 0 :(得分:1)

如果密钥对所有密钥都相同,那么您应该将密钥映射到值列表:Map<String, List<String>>

然后更新映射到特定键的值列表:

List<String> values = map.get(key);
values.add("new");
map.put(key, values);

答案 1 :(得分:0)

HashMap是一对键/值对象。对于给定的密钥,它只能是一个值。

如果您尝试使用已存在的相同密钥,则将替换该密钥的现有值。

如果要添加新值,则必须为该值提供新密钥。