例如我有:
aaa 1
ccc 1
bbb 1
ddd 3
我只需要为新的HashMap对象分配前三行的值,而不是最后一行。这该怎么做? 输入HashMap对象表示为> String,Integer< 输出HashMap对象必须是:
aaa 1
ccc 1
bbb 1
答案 0 :(得分:0)
根据定义,HashMap是无序的。 LinkedHashMap是有序的,但严格基于插入顺序。
如果您希望能够通过索引替换,则需要找到更好的数据结构,或者您必须提出一个数组列表,其中包含您可以使用的密钥副本处理订单。或者,如果你真的不依赖于任何键,只需直接使用数组列表。
答案 1 :(得分:0)
目前尚不清楚你要做什么。我将假设您从一个看起来像第一个示例的HashMap开始,并希望获得第二个示例的第二个hashmap。如果这不是您想要的,请编辑您的问题以便更清楚。
HashMap<String, Integer> secondHashMap = firstHashMap.clone();
secondHashMap.remove("ddd");