java中的Map.Entry接口的使用
import java.util.*;
import java.util.Map.Entry;
public class MapIte {
public static void main(String[] args) {
Map
map = new HashMap
();//实例化map对象
map.put("a", 1);
map.put("b", 1);
map.put("c", 1); //往map对象中添加
System.out.println(map);
Set
> set = map.entrySet(); //得到set的Map.Entry接口,便于得到迭代器
Iterator
> ite = set.iterator(); //得到Map的迭代器,在此使用了泛型,所以迭代的时候不需要类型转换 while(ite.hasNext()){ Map.Entry
me = ite.next(); //利用Map.Entry的接口来取得键值,映射的变量值 if(me.getKey().equals("a")) //判断得到的键值是否为“a”,是a就将a对应的变量加一 me.setValue(me.getValue()+1); System.out.println(me.getKey()+":"+me.getValue()); } } }
Map因为它存在着键值对,当它每次push的时候就会默认生成一个Map.Entry的对象,Map.Entry对象可以获取map的键值对,就是getKey()和getValue()方法,通过迭代器将Map.Entry转换为set类集,set类集中有迭代器,所以上面的代码一气呵成。