`
听你清歌
  • 浏览: 47096 次
  • 性别: Icon_minigender_1
  • 来自: 永康
社区版块
存档分类
最新评论

HashMap遍历方法

阅读更多
java Map遍历速度最优解

第一种(效率高):

Map map = new HashMap();

Iterator iter = mat.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 = mat.entrySet().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,而entry只遍历了一次,把key和value都放到了entry中,所以就快了
分享到:
评论
1 楼 netwelfare 2015-07-07  
个人感觉,文章对HashMap的遍历分析的有点浅,不如这里的介绍:《HashMap两种遍历方式的深入研究》

相关推荐

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

    一、HashMap遍历方法 HashMap提供了多种遍历方法,每种方法都有其优缺: 1. 通过Map.keySet遍历key和value 这是一种简单的遍历方法,通过遍历键的集合来获取键值对。 ```java Map, String&gt; map = new HashMap(); ...

    Java HashMap 如何正确遍历并删除元素的方法小结

    Java HashMap 提供了两种遍历方法:foreach 模式和迭代器遍历。 1. foreach 模式 foreach 模式是最简单的遍历方法,适用于不需要修改 HashMap 内元素的遍历,只需要获取元素的键/值的情况。 ```java HashMap, V&gt; ...

    1.HashSet和HashMap遍历.md

    自己写的例子,关于HashSet遍历和HashMap遍历的. 感谢大家参考

    Java 实例 - HashMap遍历源代码-详细教程.zip

    这个实例教程将深入解析HashMap的遍历方法及其源代码,帮助开发者更好地理解和使用HashMap。以下是对这个主题的详细讲解: 1. **HashMap概述**: HashMap是一个基于哈希表实现的键值对数据结构,提供了快速的存取...

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

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

    使用多种方式实现遍历HashMap的方法

    遍历HashMap是常见的操作,本文将介绍六种不同的方法来实现这一功能。 1. **方式一:使用KeySet方法** KeySet方法返回HashMap中所有键的Set视图。由于Set接口实现了Iterable接口,我们可以使用for-each循环来遍历...

    HashMap遍历

    ### HashMap遍历详解 在Java编程中,`HashMap`是一种常用的数据结构,它实现了`Map`接口,提供了基于哈希表的存储方式,允许我们快速地查找、插入和删除键值对。对于`HashMap`的遍历,是进行数据处理和分析时不可或...

    Java HashMap的三种遍历方法及优缺点含示例

    HashMap中的所有键。遍历键集,然后使用get()方法获取对应的值。...理解其内部机制和遍历方法对于优化代码性能和解决问题至关重要。在实际编程中,根据需求选择合适的遍历方式,可以有效提高代码的执行效率和可读性。

    FLEX HashMap遍历并取到需要的值

    综上所述,"FLEX HashMap遍历并取到需要的值"的知识点主要涉及了Java中的HashMap数据结构、遍历方法、迭代器模式以及类型转换等概念。通过这些知识点,开发者可以灵活地在项目中使用HashMap进行高效的数据操作。

    Java5种遍历HashMap数据的写法

    Java5种遍历HashMap数据的写法 Java语言中,HashMap是一种常用的数据结构,用于存储键值对形式的数据。然而,在实际开发中,我们经常需要遍历HashMap...开发者可以根据实际情况选择合适的遍历方法,以满足不同的需求。

    java遍历HashMap简单的方法

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

    java中Map的两种遍历方法

    在Java编程语言中,`Map`接口是集合框架的一个重要组成部分,...当然,选择哪种遍历方法还应考虑具体的应用场景和个人编码习惯。在追求代码可读性和维护性的同时,合理利用这两种遍历策略,可以使程序更加健壮和高效。

    java Map 遍历方法

    ### Java Map遍历方法详解 在Java编程语言中,`Map`接口是集合框架中的一个核心组成部分,它存储键值对映射。本篇文章将详细介绍几种常用的遍历`Map`的方法,包括使用传统迭代器(Iterator)、增强型for循环(For-...

    map遍历的四种方法

    ### Map遍历的四种方法 在Java编程语言中,`Map`是一种常用的数据结构,用于存储键值对。为了能够有效地处理和操作这些键值对数据,熟练掌握遍历`Map`的方法至关重要。本文将详细介绍四种不同的遍历`Map`的方式,并...

    常用struts1遍历方法

    ### 常用Struts1遍历方法 在Struts框架中,对于数据集合的处理是非常常见的需求之一,尤其是在Web应用开发中。Struts1提供了多种遍历集合的方法,其中最为常用的便是`&lt;logic:iterate&gt;`标签。通过该标签,我们可以...

    java中Map集合的常用遍历方法及HashMap的应用实例

    Map的遍历大体有3种: 1、遍历Map.entrySet():它的每一个元素都是Map.Entry对象,这个对象中, 放着的就是Map中的某一对key-value; 2、遍历Map.keySet():它是Map中key值的集合,我们可以通过遍历这个集合来 ...

    java哈希遍历_哈希遍历_

    本文将深入探讨Java中HashMap的遍历方法及其使用场景。 HashMap是Java集合框架中的一个重要成员,它实现了Map接口。HashMap内部通过数组加链表的方式存储数据,即每个元素通过哈希函数映射到数组的一个位置,如果...

    hashMap和hashTable的区别

    - **HashMap**:提供了 `containsKey`, `containsValue`, `putIfAbsent` 等方法。 - **HashTable**:提供了 `contains` 方法来判断是否存在某个值(已过时),而 `containsKey` 和 `containsValue` 是 `Map` 接口...

Global site tag (gtag.js) - Google Analytics