首页 > 其他 > 详细

Map-HashMap-遍历

时间:2019-11-05 13:58:55      阅读:84      评论:0      收藏:0      [点我收藏+]

第一种遍历方法 :

先获取Map中的所有key值,然后根据key,依次从Map中去数据 (针对只取 Key 或者 Value 的情况

1         Map<String, String> hashMap = new HashMap<String, String>();
2         Set<String> keys = hashMap.keySet();
3             for (String key : keys) {
4                 System.out.println(key + " " + hashMap.get(key));
5             }        

 Map中提供了 Set<K> keySet() 和 Collection<V> values()

 Set  的遍历方法:

 1 Iterator iter = hashMap.entrySet().iterator(); 
 2 
 3 while (iter.hasNext()) { 
 4 
 5     Map.Entry entry = (Map.Entry) iter.next(); 
 6 
 7     Object key = entry.getKey(); 
 8 
 9     Object val = entry.getValue(); 
10 }

 

 

第二种遍历方法 :     Iterator 迭代器 

//第一种  
Iterator<String> iterator = hashMap.keySet().iterator();

    while (iterator.hasNext()) {

    String key = iterator.next();

   System.out.println(key);
    System.out.println(hashMap.get(key));
}
//第二种 ,这种方式比上面得快一些(数据量大的时候能体现出来)

Iterator<Map.Entry<String, String>> iterator = hashMap.entrySet().iterator();

  while (iterator.hasNext()) {

  Map.Entry<String, String> next = iterator.next();

 System.out.println(next.getKey());
 System.out.println(next.getValue());
}

 

  • List 和 Set 集合都实现了Iterable接口,所以他们的实现类可以使用迭代器遍历,map集合未实现该接口,若要使用迭代器循环遍历,需要借助set集合
  • 推荐使用 EntrySet 遍历,效率更高

Map-HashMap-遍历

原文:https://www.cnblogs.com/Java-luan/p/11797811.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!