map.entry使用

关于Map.Entry的使用。

Map.Entry相当于把Map的Key和Value放在一个对象里面。
遍历的时候,不用再根据keySet的key,使用额外的一次map.getKey()来获得value。提高了效率。

如果只需要ValueSet的话,只需要foreach就可以了。

几种方法的比较。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
HashMap<Object,Object> map = new HashMap<Object,Object>();
Iterator iterator = map.keySet().iterator();
while(iterator.hasNext()) {
Object key = iterator.next();
Object val = map.get(key);
//....
}
//使用foreach方法
for(Object key:map.keySet()) {
Object val = map.get(key);
//....
}
//使用map.entry
for(Entry<Object,Object> entry: map.entrySet()) {
entry.getKey();
entry.getValue();
}