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

首頁 > 編程 > Java > 正文

使用多種方式實現遍歷HashMap的方法

2019-11-26 14:18:38
字體:
來源:轉載
供稿:網友

今天講解的主要是使用多種方式來實現遍歷HashMap取出Key和value,首先在java中如果想讓一個集合能夠用for增強來實現迭代,那么此接口或類必須實現Iterable接口,那么Iterable究竟是如何來實現迭代的,在這里將不做講解,下面主要講解一下遍歷過程。

//定義一個泛型集合Map<String, String> map = new HashMap<String, String>();//通過Map的put方法向集合中添加數據    map.put("001", "劉備");    map.put("002", "曹操");    map.put("003", "孫權");

方式一:使用該Map接口的KeySet方法來實現

問題:我們都知道Map接口并沒有實現Iterable接口,為什么能用他的KetSet方法就能實現迭代呢?

解析:因為KeySet方法返回此映射中包含的鍵的 Set 視圖,這個方法竟然能返回一個Set試圖,也就說他的返回值類型是一個Set接口,我們可以通過API文檔看到Set接口他是實現了Iterable接口,所以能實現迭代。

//調用KeySet方法放回一個Set接口類型    Set<String> set = map.keySet();    //使用for增強來取出key和value    for (String item : set) {      System.out.println("Key是:" + item + ";Value值是:" + map.get(item));    }

方式二:使用Map接口的Values方法實現(for增強)

同理:調用Map接口的values方法他放回一個Collection試圖,Collection接口他又實現了Iterable接口,所以能夠迭代。

Collection<String> con = map.values();    for (String item : con) {      System.out.println("Value值是:" + item);    }

方式三:使用Map接口的entrySet方法實現(for增強)

entrySet:entrySet()的返回值也是返回一個Set集合,此集合的類型為Map.Entry,Map.Entry是Map聲明的一個內部接口,此接口為泛型,定義為Entry<K,V>。它表示Map中的一個實體(一個key-value對)。

Set<Entry<String, String>> setentry = map.entrySet();    for (Entry<String, String> item : setentry) {      System.out.println("Key是:" + item.getKey() + ";Value值是:"          + item.getValue());    }

方式四:使用Map接口的keySet().Iterable()(while循環)

Iterable():返回在此 set 中的元素上進行迭代的迭代器。返回的元素沒有特定的順序(除非此 set 是某個提供順序保證的類的實例)。返回值類型Iterator<E>

Iterator<String> it = map.keySet().iterator();//如果仍有元素可以迭代,則返回 true。    while (it.hasNext()) {     //獲取Key值   String key = it.next();   System.out.println("Key是:" + key + ";Value值是:" + map.get(key));   }

方式五:使用Map接口的value.Iterable()(while循環)

Iterator<String> it1 = map.values().iterator();    while (it1.hasNext()) {      String value = it1.next();      System.out.println("Value值是:" + value);    }

方式六:使用Map接口的entrySet().Iterable()(while循環)

Iterator<Entry<String, String>> it2 = map.entrySet().iterator();    while (it2.hasNext()) {      Entry<String,String> entry=it2.next();      System.out.println("Key是:" + entry.getKey() + ";Value值是:" + entry.getValue());    }

以上這篇使用多種方式實現遍歷HashMap的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汉中市| 临沧市| 太保市| 论坛| 静安区| 洪雅县| 卢氏县| 花莲县| 青田县| 社旗县| 扎鲁特旗| 梅州市| 周口市| 元谋县| 和田市| 吉水县| 凤山县| 阿瓦提县| 射洪县| 长沙市| 南通市| 山东| 锦屏县| 乐昌市| 嘉禾县| 韶山市| 理塘县| 乌拉特中旗| 桐梓县| 溧水县| 中方县| 武功县| 富阳市| 颍上县| 天柱县| 寿宁县| 禄劝| 西藏| 望奎县| 房产| 昌宁县|