迭代器只针对集合类型的数据,因此map类型的必须先转换成集合类型才能使用迭代器去获取元素。
1.在map中虽然不能直接实例化迭代器,但map集合提供了keySet()方法和value()方法,可以通过先将键值输出到一个集合,可以是list集合或者set集合。
2.通过键的集合就可以直接实例化迭代器。
3.在进行迭代操作时,可以通过get()方法,找出每个键对应的值,输出即可。
1 Map mm=new HashMap(); 2 Set keySet = mm.keySet(); 3 Iterator iterator=keySet.iterator(); 4 while(iterator.hasNext()) { 5 Object key = iterator.next(); 6 Object value = mm.get(key); 7 System.out.println(key+" "+value); 8 }
1 HashSet set=map.entrySet();//将map类型数据转换成集合set类型的。 2 iter=set.iterator();//获得集合的迭代器。
1 //将Map类型的值转换为集合类型,才能使用迭代器 2 Collection<Student2> collection = treeMap.values(); 3 Iterator<Student2> iterator = collection.iterator();
keySet获得的只是key值的集合,
values获得的是value集合,
entryset获得的是键值对的集合。