`
Godlikeme
  • 浏览: 165097 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

HashMap的KeySet Iterator问题

 
阅读更多
一个很诡异的问题,还没有研究透。
HashMap的Keyset迭代器的效率要相对ArrayList效率低一些。
在P4 1.5上测试,大约1000,000记录迭代一遍 HashMap 420ms,ArrayList 80ms的样子。
从数字上看,两边的差异并不大,但在迭代中包括同样数据库操作的情况下,整体时间分别为10分钟对2分钟,原因待查。
分享到:
评论

相关推荐

    hashMap利用iterator迭代器迭代元素方法

    Iterator<String> keyIterator = hashMap.keySet().iterator(); while (keyIterator.hasNext()) { String key = keyIterator.next(); System.out.println("Key: " + key); } ``` 3. **使用`values()`迭代**...

    Java源码解析HashMap的keySet()方法

    Java源码解析HashMap的keySet()方法 Java中的HashMap提供了一个keySet()方法,该方法用于获取HashMap中的key的集合。下面我们将对HashMap的keySet()方法进行源码解析,以了解其内部实现机制。 首先,看一下keySet...

    如何得到hashmap的索引

    Iterator iterator = hashmap.keySet().iterator(); while (iterator.hasNext()) { Object key = iterator.next(); Object value = hashmap.get(key); } System.out.println("keySet耗时: " + (Calendar....

    hashmap 实例

    Iterator iterator = hashmap.keySet().iterator(); while (iterator.hasNext()) { System.out.println(hashmap.get(iterator.next())); } ``` 这里,我们没有使用迭代器直接获取值,而是先获取键,再通过 `get()`...

    HashMap遍历

    Iterator<String> iterator = map.keySet().iterator(); while (iterator.hasNext()) { String key = iterator.next(); String value = map.get(key); System.out.println("Key: " + key + ", Value: " + value);...

    浅谈Java中HashMap类的使用.pdf

    HashMap 是 Java 语言中最常用的集合类之一,它实现了 Map 接口,提供了 put、get、keySet 等常用方法来存储和检索数据。本文将详细介绍 HashMap 类的使用,包括其常用方法、特点和应用场景。 一、HashMap 的基本...

    HashMap资料.zip

    8. **HashMap的遍历方式**:HashMap可以通过`keySet()`、`entrySet()`和`values()`方法分别获取键的集合、键值对的集合和值的集合进行遍历,其中`entrySet()`通常是最高效的遍历方式。 9. **HashMap与HashTable的...

    怎样遍历一个HashMap?

    可以通过2种方法遍历HashMap <br>Map map... <br>for (Iterator iter = map.keySet().iterator(); iter.hasNext();) { <br> Object key = iter.next(); <br> Object val = map.get(key); <br>} <br>

    Map、Set、Iterator迭代详解

    Iterator<K> keys = map.keySet().iterator(); Iterator<V> values = map.values().iterator(); ``` 这里需要注意的是,这些视图都是动态的,即如果修改了`Map`,那么这些视图也会随之更新。 ### Set接口详解 ####...

    HashMap和List遍历方法及如何遍历删除元素总结

    要解决HashMap遍历删除元素的问题,可以使用Iterator来遍历HashMap,并使用Iterator的remove方法来删除元素。这样可以避免ConcurrentModificationException异常。 小结 在遍历和删除HashMap和List的元素时,需要...

    JAVA遍历Map所有元素.doc

    Iterator iterator = hashmap.keySet().iterator(); while (iterator.hasNext()) { System.out.print(hashmap.get(iterator.next())); } System.out.println(); System.out.println(Calendar.getInstance()....

    java遍历HashMap简单的方法

    HashMap遍历的常用方法主要有三种:迭代器(Iterator)遍历、键集(KeySet)遍历以及 Entry 集(entrySet)遍历。下面将逐一介绍这些方法。 1. 迭代器遍历: HashMap提供了迭代器接口(Iterator),可以通过调用`...

    HashMap底层实现原理共6页.pdf.zip

    HashMap提供了两种遍历方式:通过迭代器(Iterator)按照插入顺序遍历,或者通过键集(keySet)、值集(values)或键值对集(entrySet)按照哈希顺序遍历。由于HashMap的无序性,不保证插入顺序与遍历顺序一致。 8....

    java-hashmap:Java HashMap的插图

    iterator()迭代在HashMap上进行迭代 插图7:使用TreeMap对未排序的HashMap进行排序 关于项目 该项目包括样本NetBeans项目,该项目说明了Java HashMap类。 关于开发商 示例NetBeans项目作为一个示例,

    Java5种遍历HashMap数据的写法

    Iterator<Integer> iterator = coursesMap.keySet().iterator(); while (iterator.hasNext()) { Integer key = iterator.next(); System.out.print(key + ". "); System.out.println(coursesMap.get(key)); } ```...

    Java HashMap三种循环遍历方式及其性能对比实例分析

    HashMap提供了三种循环遍历方式,即for each map.entrySet()、显示调用map.entrySet()的集合迭代器、for each map.keySet()。每种遍历方式都有其特点和优缺势,本文将通过实例分析和性能测试来比较这三种遍历方式的...

    java提高篇(二三)-----HashMap.pdf

    HashMap提供了迭代器(Iterator)和键集(keySet)、值集(values)以及键值对集(entrySet)来进行遍历。 总结来说,HashMap是Java中一种高效的键值对存储结构,其性能依赖于良好的哈希函数、合适的初始容量和...

    基于HashMap遍历和使用方法(详解)

    HashMap遍历和使用方法详解 HashMap是Java中一种常用的数据结构,用于存储键值对的集合。它实现了Map接口,是基于哈希表结构的,可以快速地存储和检索数据。本文将详细介绍HashMap的遍历和使用方法,并比较HashMap...

    Java集合之HashMap用法详解

    Iterator it = map.keySet().iterator(); while (it.hasNext()) { Object key = it.next(); Object val = map.get(key); System.out.println("键:" + key + "<==>" + "值:" + val); } ``` HashMap的应用场景 ...

    Java使用keySet方法获取Map集合中的元素

    Iterator<String> it = keyset.iterator(); while( it.hasNext() ) { String key = it.next(); System.out.println( "key-" + key + " value-" + ma.get(key) ); } } } ``` 在上面的示例代码中,我们首先创建...

Global site tag (gtag.js) - Google Analytics