我有以下代码用于存储重复键的树形图,它似乎覆盖了现有的密钥.
TreeMap<String, Integer> tm=new TreeMap<>();
tm.put("vivek", 1);
tm.put("vivek", 2);
System.out.println(tm);
Run Code Online (Sandbox Code Playgroud)
它打印{vivek=2}所以它意味着地图允许在密钥的基础上覆盖?
Tim*_*m B 14
所有映射共享相同的基本属性,其中之一是所有键必须是唯一的.因此为什么要keySet()回归Set.
要做你想要的东西,你需要一个Multimap--它实际上是一个List to Map.
Map<Integer, List<String>> multiMap;
Run Code Online (Sandbox Code Playgroud)
要添加对象,请获取该键的列表,如果为null,则添加列表,然后将值添加到列表中,否则只需将值添加到现有列表中.
各种第三方库中都有一些多图表实现,或者很容易实现自己的.
| 归档时间: |
|
| 查看次数: |
35097 次 |
| 最近记录: |