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类集中有迭代器,所以上面的代码一气呵成。