黑马程序员技术交流社区
标题:
Map操作小技巧,关于Map.Entry
[打印本页]
作者:
张宇鹏
时间:
2011-7-26 23:23
标题:
Map操作小技巧,关于Map.Entry
标准的Map访问方法如下:
[code=java]Set keys = map.keySet();
if(keys!=null) {
Iterator it = keys.iterator();
While(iterator.hasNext() {
Object key = iterator.next();
Object value = map.get(keys);
;……;
}
}[/code]
这个方法有一个问题。从Map中取得关键字之后,我们必须每次重复返回到Map中取得相对的值,这是很繁琐和费时的。
这里有一个更加简单的途径。Map类提供了一个称为entrySet()的方法,这个方法返回一个Map.Entry实例化后的对象集。接着,Map.Entry类提供了一个getKey()方法和一个getValue()方法,因此,上面的代码可以被组织得更加符合逻辑。举例如下:
[code=java]Set entries = map.entrySet();
If(entries!=null) {
Iterator iterator = entries.iterator();
while(iterator.hasNext()) {
Map.Entry entry = iterator.next();
Object key = entry.getKey();
Object value = entry.getValue();
}
}[/code]
尽管增加了一行代码,却省略了许多对Map不必要的”get”调用。同时,提供给开发人员一个同时保持了关键字和其对应的值的类。
Map.Entry同时也提供了一个setValue()方法,程序员可以使用它来修改Map里的值。
[
本帖最后由 张宇鹏 于 2011-07-26 23:25 编辑
]
作者:
匿名
时间:
2011-7-26 23:25
:lol 学习了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2