我只是寻找一个解释和/或洞察力,为什么它更好地迭代HashMap。Java HashMap删除键/值
例如下面的代码(在我眼里)完全相同(或它应该)。但是,如果我不遍历HashMap,则不会删除密钥。
_adjacentNodes.remove(node);
Iterator<Map.Entry<String, LinkedList<Node>>> iterator = _adjacentNodes.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<String, LinkedList<Node>> entry = iterator.next();
if(node.getNodeID().contentEquals(entry.getKey())){
iterator.remove();
}
}
这是怎么回事?
hkn刚刚回应说明我的密钥是一个字符串,我试图删除该对象。 –
是的,看到编辑,他在我输入的时候发布。 –