Map是java中的一个接口,Map.Entey是Map的一个内部接口
Map.Entey是Map声明的一个内部接口,此接口为泛型,定义为Entey<K,V>。他表示Map中的一个实体(键值对)。接口中有getKey(),getValue()方法。
//第一种:
System.out.println(“通过Map.keySet遍历key和value:”);
Set keySet = a.keySet();
Iterator it = keySet.iterator();
while (it.hasNext()){
String key = it.next();//迭代器中的元素都是key
String value = a.get(key);//通过get()方法找到key对应的value
System.out.println(value);
}
//第二种 效率相对第一种更高
System.out.println(“通过Map.entrySet使用iterator遍历key和value:”);
Set<Map.Entry<String,String>> entrySet = a.entrySet();
Iterator<Map.Entry<String,String>> it = entrySet.iterator();
while (it.hasNext()){
Map.Entry<String,String> entry = it.next();
String key = entry.getKey();
String value = entry.getValue();
System.out.println(key + " -> " + value);
}
注意:Map集合不能直接使用迭代器或者foreach进行遍历。但是转成Set之后就可以使用了。