第一种:
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中,所以就快了。
注:Hashtable的遍历方法和以上的差不多!
分享到:
相关推荐
### Java Map遍历方法详解 在Java编程语言中,`Map`接口是集合框架中的一个核心组成部分,它存储键值对映射。本篇文章将详细介绍几种常用的遍历`Map`的方法,包括使用传统迭代器(Iterator)、增强型for循环(For-...
这篇博文主要探讨了如何遍历Java中的`Map`对象,下面将详细介绍几种常见的遍历`Map`的方法。 1. **迭代器法**: Java提供了`Map`接口的`entrySet()`方法,返回一个包含`Map`中所有键值对的`Set`视图。通过这个`Set...
Java Map遍历方法是编程中常见的操作,尤其是在处理键值对数据时。Map接口在Java中扮演着重要的角色,它提供了存储和检索键值对的能力。以下是对Java Map遍历方法的详细介绍: 1. **使用迭代器遍历**: 这是最基础的...
主要提供java中的map的遍历实例及效率比较
在Java编程语言中,`Map`接口是一...总之,遍历`Map`是Java编程中常见的需求之一,掌握正确的遍历方法不仅可以提高代码的效率,还可以避免潜在的错误。希望本文的内容能帮助你更好地理解和使用Java中的`Map`遍历技巧。
本篇将详细介绍Java中遍历`Map`的不同方法,以及如何获取`Map`的长度。 1. **遍历Map** - **方法一:通过`Map.keySet()`遍历** 这是最基础的遍历方式,通过获取`Map`的`keySet`,然后用增强型for循环遍历`keySet`...
在Java编程语言中,`Map`接口是集合框架的一个重要组成部分,...当然,选择哪种遍历方法还应考虑具体的应用场景和个人编码习惯。在追求代码可读性和维护性的同时,合理利用这两种遍历策略,可以使程序更加健壮和高效。
### Map遍历的四种方法 在Java编程语言中,`Map`是一种常用的数据结构,用于存储键值对。为了能够有效地处理和操作这些键值对数据,熟练掌握遍历`Map`的方法至关重要。本文将详细介绍四种不同的遍历`Map`的方式,并...
这个方法是最常用的遍历方法,它可以直接获取 Map 集合中的所有值,然后使用 Iterator 遍历这些值。这种方法简单易懂,易于掌握,但它不能获取 Map 中的键,只能获取值。例如: ```java public static void work...
在Java编程中,Map接口是用于存储键值对的数据结构,它提供了多种遍历Map的方法。本篇文章将详细分析Java中遍历Map的四种常见方法,帮助开发者更好...了解并掌握这些遍历方法,可以帮助开发者更灵活地处理Map数据结构。
### Map遍历方法总结 #### 一、引言 在Java编程中,`Map`是一种常用的集合类型,用于存储键值对数据。由于其高效的数据查找特性,在许多场景下都有广泛的应用。对于开发者来说,了解如何有效地遍历`Map`中的元素是...
总结来说,Java 8为Map遍历提供了更多现代且高效的手段,包括Lambda表达式、Stream API和`forEach()`方法,让开发者在处理Map数据结构时拥有更大的灵活性和更高的性能。这些新特性极大地提高了代码的可读性和维护性...
本文将详细介绍Java中Map集合的三种遍历方法及其应用场景、优缺点等,帮助读者更好地理解和掌握Map的使用技巧。 ### 一、Map简介 `Map`接口是Java集合框架的一部分,它提供了基于键值对的数据存储方式。常见的实现...
### Java中遍历Map的四种方式及性能比较 在Java编程中,`Map`是一种非常重要的数据结构,用于存储键值对。对于`Map`的遍历,不同的遍历方式有着不同的性能表现以及适用场景。本文将详细介绍四种常见的遍历`Map`的...
### Java遍历JSON树知识点详解 #### 一、前言 在处理Web应用程序中的数据时,JSON(JavaScript Object Notation)是一种非常常见的数据格式。它轻量级且易于读写,因此广泛应用于前后端的数据交互中。对于Java...
.Map集合的遍历方法 Map集合是Java中的一种常用的数据结构,用于存储键值对的数据。Map集合的遍历是指从Map集合中取出所有的键值对,并进行处理的过程。在实际开发中,Map集合的遍历是非常常见的操作。本文将介绍...
本篇文章将详细解释如何遍历`Map`对象的所有数据,并介绍几种常见的遍历方法。我们将重点讨论通过`entrySet()`方法和`keySet()`方法来实现遍历的过程。 #### 方法一:使用`entrySet()` `entrySet()`方法返回一个...
在Java编程中,Map接口是数据...总结来说,遍历Java Map时,优先选择`entrySet()`方法,它不仅提供了键值对的直接访问,而且在性能上更优。同时,理解这两种遍历方式的工作原理,可以帮助我们更好地理解和优化代码。
Java中提供了多种集合遍历方式,包括迭代器遍历、Map遍历、List遍历等。下面我们将逐一介绍这些遍历方式的实现原理和优缺点。 一、迭代器遍历 迭代器遍历是Java中最基本的集合遍历方式。迭代器是一个对象,它允许...