Java HashMap遍历的两种方式
今天来搞一次HashMap 遍历的操作方式:
经过测试,方式一的效率要远高于方式二.,1000000条测试数据,第一种大概耗时20多秒,第二种耗时大概40多秒.所以,建议以后使用第一种方式.
直接上代码:
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;public class testHashMap {static Map<Object, Object> map;static long begin;static long end;public static void main(String[] args) {map = new HashMap<Object, Object>();for (int i = 0; i < 1000000; i++) {map.put("map" + i, i);}// 第一种:Iterator<Entry<Object, Object>> iter = map.entrySet().iterator();begin = System.currentTimeMillis();while (iter.hasNext()) {Entry<Object, Object> entry = iter.next();Object key = entry.getKey();Object val = entry.getValue();// System.out.println("["+key+","+val+"]");}end = System.currentTimeMillis();System.out.println("第一种,耗时" + (end - begin));// 第二种:Iterator<Object> iter1 = map.keySet().iterator();begin = System.currentTimeMillis();while (iter1.hasNext()) {Object key = iter1.next();Object val = map.get(key);// System.out.println("["+key+","+val+"]");}end = System.currentTimeMillis();System.out.println("第二种,耗时" + (end - begin));}}
转载于:https://www.cnblogs.com/aikongmeng/p/3697350.html
Java HashMap遍历的两种方式相关推荐
- [Java] HashMap遍历的两种方式
Java中HashMap遍历的两种方式原文地址: http://www.javaweb.cc/language/java/032291.shtml 第一种: Map map = new HashMap ...
- Java中HashMap遍历的两种方式
第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) { Ma ...
- HashMap遍历的两种方式,推荐使用entrySet()
转自:HashMap遍历的两种方式,推荐使用entrySet() 第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterat ...
- java hashmap遍历顺序_Java中HashMap遍历的两种方式
第一种: Map map = HashMap(); Iterator iter = map.entrySet().iterator(); (iter.hasNext()) { Map.Entry e ...
- Java 实现抽奖的两种方式
Java实现抽奖的两种方式 方式一:随机数在哪个区间内返回区间下标 方式二:随机数加入区间点集合排序返回随机数下标 代码示例: ①抽奖入参类型为BigDecimal: package com.cfay ...
- HashMap遍历的三种方式
HashMap遍历的三种方式 hashmap常用的三种方式分为 keySet遍历 就是把这个hashmap所有的key都拿出来放到一个set里,然后在通过这个key去通过hashmap的get方法去查 ...
- 创建和应用Java包文件的两种方式(转)
创建和应用Java包文件的两种方式(转) <Java编程艺术>章节选登.作者:高永强 清华大学出版社 (即将出版) 12.1 包--package ... 12.1.1 包命名规 ...
- java制作oracle程序,Java程序操作Oracle两种方式之简单实现
Java程序操作Oracle两种方式之简单实现 1.通过JDBC-ODBC桥连接Oracle数据库 (1)创建odbc源,在控制面板->管理工具->数据源(odbc)中添加DSN,比如取名 ...
- python循环展示大写字母_python调用大写函数python中字典的循环遍历的两种方式
开发中经常会用到对于字典.列表等数据的循环遍历,但是python中对于字典的遍历对于很多初学者来讲非常陌生,今天就来讲一下python中字典的循环遍历的两种方式. 注意: python2和python ...
最新文章
- ×××论坛应该为访问者更大的价值
- Spring-AOP的五种通知和切面的优先级、通知变量声明
- 2014/Province_Java_B/2/调和级数
- C#LeetCode刷题之#475-供暖器(Heaters)
- 1.Could not load the Tomcat server configuration at /Servers/Tomcat v7.0 Server(tomcat突然用不了)...
- SQL点滴系列之删除数据(五)
- c语言限流算法,分布式限流常用算法
- python通讯录文件读取_python通用读取vcf文件的类(可以直接复制粘贴使用)
- [迁移] Luac的使用
- 使用bat脚本自动打开cmd并执行命令
- Windows自带的远程协助工具(非远程桌面,类比QQ远程桌面)
- 一组绝对有益于科研的随想录(转载)
- python 取余 韩信点兵_韩信点兵问题的神算法
- Softmax-with-Loss层的计算图 | Softmax梯度推导 | Loss损失函数
- 离散数学复习:二元关系
- 独家出品 | 培训机构免费资源汇总
- 基于Python-Pycharm的猴子摘桃小game
- 如何从零基础学嵌入式
- 免费赠送20个帆布包和2个咖啡杯活动规则必看(会搜索+复制粘贴就行)
- 第二十一章 : 文本处理