博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java中HashMap遍历的两种方式
阅读量:5860 次
发布时间:2019-06-19

本文共 1995 字,大约阅读时间需要 6 分钟。

转]Java中HashMap遍历的两种方式 原文地址: http://www.javaweb.cc/language/java/032291.shtml 第一种:   Map map = new HashMap();   Iterator iter = map.entrySet().iterator();   while (iter.hasNext()) {
  Map.Entry entry = (Map.Entry) iter.next();   Object key = entry.getKey();   Object val = entry.getValue();   }   效率高,以后一定要使用此种方式! 第二种:   Map map = new HashMap();   Iterator iter = map.keySet().iterator();   while (iter.hasNext()) {
  Object key = iter.next();   Object val = map.get(key);   }   效率低,以后尽量少使用! HashMap的遍历有两种常用的方法,那就是使用keyset及entryset来进行遍历,但两者的遍历速度是有差别的,下面请看实例:   public class HashMapTest {
  public static void main(String[] args) ...{
  HashMap hashmap = new HashMap();   for (int i = 0; i < 1000; i ) ...{
  hashmap.put("" i, "thanks");   }   long bs = Calendar.getInstance().getTimeInMillis();   Iterator iterator = hashmap.keySet().iterator();   while (iterator.hasNext()) ...{
  System.out.print(hashmap.get(iterator.next()));   }   System.out.println();   System.out.println(Calendar.getInstance().getTimeInMillis() - bs);   listHashMap();   }   public static void listHashMap() ...{
  java.util.HashMap hashmap = new java.util.HashMap();   for (int i = 0; i < 1000; i ) ...{
  hashmap.put("" i, "thanks");   }   long bs = Calendar.getInstance().getTimeInMillis();   java.util.Iterator it = hashmap.entrySet().iterator();   while (it.hasNext()) ...{
  java.util.Map.Entry entry = (java.util.Map.Entry) it.next();   // entry.getKey() 返回与此项对应的键   // entry.getValue() 返回与此项对应的值   System.out.print(entry.getValue());   }   System.out.println();   System.out.println(Calendar.getInstance().getTimeInMillis() - bs);   }   }   对于keySet其实是遍历了2次,一次是转为iterator,一次就从hashmap中取出key所对于的value。而entryset只是遍历了第一次,他把key和value都放到了entry中,所以就快了。 Java中HashMap遍历的两种方式(本教程仅供研究和学习,不代表JAVA中文网观点) 本篇文章链接地址:http://www.javaweb.cc/language/java/032291.shtml 如需转载请注明出自JAVA中文网:http://www.javaweb.cc/ 还是第一种好,简单。。。

编辑器加载中...

转载于:https://www.cnblogs.com/meieiem/archive/2011/11/02/2233041.html

你可能感兴趣的文章
Android自定义摇杆
查看>>
Oracle RAC Study之--删除VOTE DISK
查看>>
Gradle 1.12用户指南翻译——第五十八章. 编写自定义插件
查看>>
swift UI专项训练14 ImageView图像视图
查看>>
网络主机监控-nagios应用漫谈(一)
查看>>
Exchange Server 2016 独立部署/共存部署 (七)—— DAG功能测试
查看>>
JSP中 request.getRealPath("/xx/yy") 方法提示已经过时的替代方法
查看>>
实现websocket多人聊天,很简单
查看>>
摩托罗拉里程碑2刷android 2.3.4
查看>>
网络安全系列之四十四 在IIS6中配置虚拟主机
查看>>
Redis Sentinel机制与用法(二)
查看>>
微软发布新版Silverlight 5 - 版本号5.1.10411.0
查看>>
推荐一个可视化数据结构、算法演示网站
查看>>
Jayrock: JSON and JSON-RPC for .NET
查看>>
机房管理系列之远程协助
查看>>
mysql删除多表中查询出来的数据
查看>>
DataGridView 新加行的默认值的设定
查看>>
shell中find详解
查看>>
谁在关心企业的IT运维管理
查看>>
windows 2008平台安装CRM总结
查看>>