国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

Map.Entry詳解

2019-11-10 18:37:51
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

1.Map.Entry說(shuō)明

Map是java中的接口,Map.Entry是Map的一個(gè)內(nèi)部接口。

Map提供了一些常用方法,如keySet()、entrySet()等方法,keySet()方法返回值是Map中key值的集合;entrySet()的返回值也是返回一個(gè)Set集合,此集合的類(lèi)型為Map.Entry。

Map.Entry是Map聲明的一個(gè)內(nèi)部接口,此接口為泛型,定義為Entry<K,V>。它表示Map中的一個(gè)實(shí)體(一個(gè)key-value對(duì))。接口中有g(shù)etKey(),getValue方法。

2.Map.Entry使用

你是否已經(jīng)對(duì)每次從Map中取得關(guān)鍵字然后再取得相應(yīng)的值感覺(jué)厭倦?使用Map.Entry類(lèi),你可以得到在同一時(shí)間得到所有的信息。標(biāo)準(zhǔn)的Map訪問(wèn)方法如下:

Set keys = map.keySet( );if(keys != null) {Iterator iterator = keys.iterator( );while(iterator.hasNext( )) {Object key = iterator.next( );Object value = map.get(key);;....;}}

然后,這個(gè)方法有一個(gè)問(wèn)題。從Map中取得關(guān)鍵字之后,我們必須每次重復(fù)返回到Map中取得相對(duì)的值,這是很繁瑣和費(fèi)時(shí)的。

幸運(yùn)的是,這里有一個(gè)更加簡(jiǎn)單的途徑。Map類(lèi)提供了一個(gè)稱(chēng)為entrySet()的方法,這個(gè)方法返回一個(gè)Map.Entry實(shí)例化后的對(duì)象集。接著,Map.Entry類(lèi)提供了一個(gè)getKey()方法和一個(gè)getValue()方法,因此,上面的代碼可以被組織得更符合邏輯。舉例如下:

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();;....}}

盡管增加了一行代碼,我們卻省略了許多對(duì)Map不必要的“get”調(diào)用。同時(shí),提供給開(kāi)發(fā)人員一個(gè)同時(shí)保持了關(guān)鍵字和其對(duì)應(yīng)的值的類(lèi)。Map.Entry同時(shí)也提供了一個(gè)setValue()方法,程序員可以使用它修改map里面的值。

文章


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 渭南市| 宣城市| 吉木乃县| 兰坪| 湄潭县| 永兴县| 和林格尔县| 高青县| 姚安县| 深泽县| 亳州市| 象山县| 旺苍县| 万荣县| 霍林郭勒市| 从江县| 开封市| 大庆市| 时尚| 康定县| 浦北县| 肥东县| 客服| 闽侯县| 大冶市| 读书| 沙洋县| 泽库县| 邳州市| 河南省| 晴隆县| 扶绥县| 怀来县| 林甸县| 吉安市| 山东省| 霞浦县| 巴彦淖尔市| 阿巴嘎旗| 新竹市| 邵东县|