JAVA: Map接口的Entry对象

Map类在设计的时候,提供了一个嵌套接口(即内部接口):Entry。Entry将键值对的对应关系封装成了对象,即键值对对象,这样我们在遍历Map集合的时候,就可以从每一个键值对(Entry)对象获取对应的键或对应的值getKey()  getValue();

1. Map接口中有个方法,叫entrySet();返回集合中key set的entry对象

意思是,这个方法先将每个键值对封装成Entry对象,再将这些对象放到set集合中去

二、用entrySet()方法取得Entry对象集合,遍历Entry对象集合

HashMap<String,int> map = new HashMap<String,int>();

map.put("a",10);

map.put("b",20);

Set<Map.Entry<String,int>> set = map.entrySet(); //内部接口,找内部类内部接口,用外部接口外部类调出

1.用增强for遍历

for(Map.Entry<String,int> entry : set){

  System.out.println(entry.getKey()+"--"+entry.getValue());

}

2.用迭代器Iterator遍历

Iterator<Map.Entry<String,int>> it = set.iterator();

while(it.hasNext()){

  System.out.println(it.next().getValue());

}

3. 如果不利用entrySet()方法,也可以直接用keySet()方法来遍历

Set<String> set = map.keySet();

for(String key:set){

  System.out.println(map.getValue(key));

}

 

posted on 2018-06-20 09:37  adamal  阅读(1183)  评论(0)    收藏  举报