java中entry的⽤处_Map.Entry使⽤详解
1.Map.Entry说明
Map是java中的接⼝,Map.Entry是Map的⼀个内部接⼝。
Map提供了⼀些常⽤⽅法,如keySet()、entrySet()等⽅法,keySet()⽅法返回值是Map中key值的集合;entrySet()的返回值也是返回⼀个Set集合,此集合的类型为Map.Entry。
Map.Entry是Map声明的⼀个内部接⼝,此接⼝为泛型,定义为Entry。它表⽰Map中的⼀个实体(⼀个key-value对)。接⼝中有
coart
getKey(),getValue⽅法。
2.Map.Entry使⽤
quote
你是否已经对每次从Map中取得关键字然后再取得相应的值感觉厌倦?使⽤Map.Entry类,你可以得到在同⼀时间得到所有的信息。标准的Map访问⽅法如下:
Set keys = map.keySet( );
时态
if(keys != null) {
Iterator iterator = keys.iterator( );
while(iterator.hasNext( )) {eco town
Object key = ( );
outlinerObject value = (key);
;....
;}
}
万宝路英文然后,这个⽅法有⼀个问题。从Map中取得关键字之后,我们必须每次重复返回到Map中取得相对的值,这是很繁琐和费时的。
幸运的是,这⾥有⼀个更加简单的途径。Map类提供了⼀个称为entrySet()的⽅法,这个⽅法返回⼀个Map.Entry实例化后的对象集。接着,Map.Entry类提供了⼀个getKey()⽅法和⼀个getValue()⽅法,因
此,上⾯的代码可以被组织得更符合逻辑。举例如下:
Set entries = Set( );
nasri酒店常用英语if(entries != null) {
Iterator iterator = entries.iterator( );
while(iterator.hasNext( )) {
Map.Entry entry =( );
Object key = Key( );
Object value = Value();
;....
}
泪洒天堂}
beautifulday
尽管增加了⼀⾏代码,我们却省略了许多对Map不必要的“get”调⽤。同时,提供给开发⼈员⼀个同时保持了关键字和其对应的值的类。Map.Entry同时也提供了⼀个tValue()⽅法,程序员可以使⽤它修改map⾥⾯的值。