Map集合遍历:
对Map集合的键、值、以及键值对都给与遍历的方法
1.遍历Map集合的Key(键)集,调用Map集合的keySet()方法,利用增强for循环,或者迭代器都可以,这里习惯试用了,增强for循环:
Map map = new HashMap();
//1.遍历Key集 调用keySet()方法
Set set = map.keySet();
for(Object obj : set) {
System.out.println(obj);
}
2.遍历value集 调用,Map集合的values()方法
Collection values= map.values();
Iterator iterator = values.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
3.遍历key-value对,此处给了两种方法:
①先将key集取出 再调用Map集合的get(key)方法获取value,逐个输出 :
Set set2 =map.keySet();
for(Object object : set2) {
System.out.println(object+"----->"+map.get(object));
}
②Map中的一个key-value对像,称作一个entry(键值对 对象),可以调用Map集合的entrySet()方法,获取Entry(键值对 对象),调用该对象的getKey(),getValue(),获取键和值,进行遍历。
Set set3 = map.entrySet();
for (Object obj:set3) {
//需要先将Object类型强制类型转换为entry类型
Map.Entry entry = (Map.Entry)obj;
System.out.println(entry.getKey()+"------->"+entry.getValue());
}
注意:
上述中,创建集合对象时都未添加泛型,如果在创建Map集合对象时添加了泛型,在使用循环语句时,条件添加对应的反应,可以不适用Object对像