java中对HashMap遍历的方式


第一种是利用HashMap的entrySet()方法:
 

     Map<String,String> map = new HashMap<String,String>();
   Iterator iter = map.entrySet().iterator();
   while (iter.hasNext()) {
   Map.Entry entry = (Map.Entry) iter.next();
   String key = entry.getKey();
   String val = entry.getValue();
   }

  



第二种是利用HashMap的keySet()方法:
  

     Map<String,String> map = new HashMap<String,String>();
   Iterator iter = map.keySet().iterator();
   while (iter.hasNext()) {
   String key = iter.next();
   String val = map.get(key);
   }

  


  对于这两种方式而言,前者的效率要比后者的效率要高;这主要是因为前者实际上是把key和value都放入到了Iterator中了,只需执行一次就可以找到所有的键值对。而后者相当于执行了两次,第一次把key和value都存入到了Iterator中,第二次从hashMap中

去除key对应的value相当于再次遍历Map。




还是第一种好,简单。。。
原文地址:https://www.cnblogs.com/wangkundentisy/p/6475727.html