在java中所有的map都实现了Map接口,因此所有的Map(如HashMap, TreeMap, LinkedHashMap, Hashtable等)都可以用以下的方式去遍历。
1. 通过Map.entrySet()遍历key和value,推荐
Map<String, Object> map = new HashMap<String, Object>();
map.put("aaa", 111);
map.put("bbb", 222);
map.put("ccc", 333);
for (Map.Entry<String, Object> m : map.entrySet()) {
System.out.println("key:" + m.getKey() + " value:" + m.getValue());
}
2. 通过Map.entrySet(),然后使用iterator迭代器的方式遍历key和value
Iterator<Entry<String, Object>> it = map.entrySet().iterator();
while(it.hasNext()){
Entry<String, Object> entry = it.next();
System.out.println("key:"+entry.getKey()+" key:"+entry.getValue());
}
3. 通过Map.keySet()遍历key,value用key来获取
for(String key : map.keySet()){
String value = map.get(key).toString();
System.out.println("key:"+key+" vlaue:"+value);
}
4. 通过Map.values()遍历所有的value,但不能遍历key
for (Object m : map.values()){
System.out.println(m);
}
网友评论