> 文档中心 > 关于Map的几种遍历方式

关于Map的几种遍历方式

Map之遍历

关于集合这块需要写的东西其实挺多的,集合有自己的顶级接口Collection,底下又有map和list两个接口,接下来我们谈一谈关于map集合方面的东西。

map是java中非常常用的一种数据结构,提供get和put两个常用的方法map虽然继承了Collection,但却没有实现Collection的Iterator 方法,自身没有迭代器来遍历元素

接下来言归正传,对于map的遍历也是我们java开发者经常会用到的东西,接下来小编整理一下关于map集合常用的四种遍历方式:

keySet集合迭代entrySet集合迭代keySet 集合for-each 循环entrySet集合for-each循环

接下来直接上代码:

public class TestMap {public static void main(String[] args) {    Map tempMap = new HashMap();      tempMap.put("a",12);      tempMap.put("b",34);      tempMap.put("c",56);   }}

遍历方法一:keySet集合迭代

    Set keySet = tempMap.keySet();    Iterator it = keySet.iterator();    while (it.hasNext()) {    String key = it.next();    System.out.println("key=" + key + " value=" + tempMap.get(key));    }

遍历方法二:entrySet集合迭代

Set<Map.Entry> entrySet = tempMap.entrySet();  Iterator<Map.Entry> meIt = entrySet.iterator();  while (meIt.hasNext()) {      Entry entry = meIt.next();      System.out.println("key=" +entry.getKey() + " value=" +  entry.getValue());  } 

遍历方法三:keySet集合For-each循环

 for (String key : tempMap.keySet()) {       System.out.println("key=" +key + " value=" +  tempMap.get(key));   } 

遍历方法四:entrySet集合For-each循环

 for (Map.Entry entry : tempMap.entrySet()) {      String key = entry.getKey();      String value = entry.getValue().toString();      System.out.println("key=" + key + " value=" + value);   }

四种方式中,方法一 和 方法二是通过迭代器来显示完成的,方法三方法四 是通过for-each来隐式的通过迭代器来完成的;方法一 和 方法是通过key的集合来完成的,方法二方法是通过entry 的集合来完成的。

小编个人比较喜欢第四种方式去遍历Map,当容量大时,推荐使用,关于集合list以及map的集合整体大框架,下篇文章详细分析

欢迎转载分享~

中国象棋