第一种遍历方法 :

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

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

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 遍历,效率更高

最新文章

  1. linux下libevent安装
  2. 美团HD(4)-二级联动效果
  3. hibernate中数据库方言
  4. Linux 下安装配置 JDK
  5. 048医疗项目-模块四:采购单模块—采购单受理(Dao,Service,Action三层)
  6. 生成PHP数组文件
  7. bzoj1355: [Baltic2009]Radio Transmission
  8. [Wordpress]Wordpress使用SMTP发送电邮
  9. Git CMD - add: Add file contents to the index
  10. Windows XP硬盘安装Ubuntu 12.04双系统图文详解
  11. java邮件发送(以163邮箱为例)
  12. Wireshark的专家模式
  13. webpack模块解析
  14. Codeforces Round #460 E. Congruence Equation
  15. mapbox.gl文字标注算法基本介绍
  16. Google浏览器解决编码乱码问题
  17. 11-8 定时器this
  18. Maven项目:Malformed POM expected START_TAG or END_TAG ........
  19. shell for循环 多个变量
  20. A Nice Paper About Mobile Data Offloading

热门文章

  1. Android刷机
  2. C学习笔记(9)--- 预处理器,头文件
  3. 自定义MVC三
  4. HashMap了解吗?
  5. c# 第24节 分部方法
  6. HTML与CSS学习笔记(6)
  7. 多线程(六)多线程同步_SemaPhore信号量
  8. windows 10 下安装VMware Workstation Pro 15.0(亲测可用!)
  9. LG2921 [USACO2008DEC]Trick or Treat on the Farm 内向基环树
  10. vscode中关于launch.json和tasks.json的变量说明