如何在Java中遍历Map对象?
如果阅读过Map 的 API开发文档,应该可以找到这三个关键方法。
Set<K> keySet(); /* 返回Key的集合 */
Collection<V> values); /* 返回value的集合 */
Set<Map.Entry<K,V>> entrySet(); /* 返回键值对的集合 */
Entry是Map接口的内部接口,一个Entry对象代表了一个键值对。
有了上面三个方法,我想遍历Map应该不成问题了。
for (Key key : map.keySet()) {
// to do with key
}
例子 2: (得到value )
for(Value value : map.values()) {
// to do with value
}
例子3:(同时得到key和value )
for(Map.Entry mapEntry : map.entrySet()) {
Key key = mapEntry.getKey();
Value value = mapEntry.getValue();
}
例子3比例子1优越的一个原因是:无需调用get()方法再次查询得到value 。