迭代/更新HashMap
这个问题在这里已经有了答案:
利用地图:首先浏览其他收藏并进行操作。
for(String blacklisted : blacklist) {
wordcounts.remove(blacklisted);
}
for(String mapping : mappings) {
String oldKey = // get old key
String value = wordcounts.get(oldKey);
wordcounts.remove(oldKey);
wordcounts.put(mapping, value);
}
使用Map.Entry.setValue
更改映射的值。 如果要删除映射,请使用setValue(null)
使用Iterator
。
不要尝试在迭代过程中移除项目,否则会从迭代器中获得异常。 最好的选择是要么
a)通过迭代/复制到新地图来克隆地图,或者b)在您去除要移除的项目时保持跟踪,并在完成迭代后移除它们。
如果您要更改密钥,则适用同样的事情。随时跟踪并在迭代完成后执行删除/添加。
如果你只是在改变价值观,那就去做吧。
链接地址: http://www.djcxy.com/p/17981.html