迭代 a 中的项目的最佳方法是HashMap什么?
HashMap
entrySet()像这样迭代:
entrySet()
public static void printMap(Map mp) { Iterator it = mp.entrySet().iterator(); while (it.hasNext()) { Map.Entry pair = (Map.Entry)it.next(); System.out.println(pair.getKey() + " = " + pair.getValue()); it.remove(); // avoids a ConcurrentModificationException } }
如果您只对键感兴趣,则可以遍历keySet()地图:
keySet()
Map<String, Object> map = ...; for (String key : map.keySet()) { // ... }
如果您只需要这些值,请使用values():
values()
for (Object value : map.values()) { // ... }
最后,如果您想要键和值,请使用entrySet():
for (Map.Entry<String, Object> entry : map.entrySet()) { String key = entry.getKey(); Object value = entry.getValue(); // ... }
一个警告:如果您想在迭代过程中删除项目,则需要通过迭代器来完成。但是,更改项目值是可以的(请参阅 参考资料Map.Entry)。
Map.Entry