`
vanceinfo_xuefei
  • 浏览: 9362 次
  • 性别: Icon_minigender_1
  • 来自: 南京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

java中map的遍历

    博客分类:
  • JAVA
阅读更多
今天写完代码做find bugs时在map的遍历这方面出现了一下的一个提示:
”inefficient use of keySet iterator instead of entrySet iterator“
大概意思就是效率不高。
经过研究比较,发现以下两种方式遍历map都可以,只是效率不同而已
Map<String, Integer> catalogIds = new HashMap<String, Integer>();
方式一、
           Set<Map.Entry<String, Integer>> set = catalogIds.entrySet();
                 Iterator<Entry<String, Integer>> it = set.iterator();
                    while (it.hasNext())
                    {
                        String catalogId = it.next().getKey();
                        if (catalogIds.get(catalogId) < 2)
                        {
                            it.remove();
                            catalogIds.remove(catalogId);
                        }
                    }

方式二、
         Iterator<String> it = catalogIds.keySet().iterator();
                    while (it.hasNext())
                    {
                        String catalogId = it.next();
                        if (catalogIds.get(catalogId) < 2)
                        {
                            it.remove();
                            catalogIds.remove(catalogId);
                        }
                    }

根据find bugs提示来看,方式一比方式二的效率更高...至于为什么,作为java小菜鸟的我还在研究中...
分享到:
评论
2 楼 vanceinfo_xuefei 2012-02-28  
按照find bugs来看...应该是第一种效率更高
1 楼 ljc1551008936 2012-02-28  
飞飞,好东西;只是不知道那个效率会更高!?

相关推荐

    java Map 遍历方法

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

    JAVA8独有的map遍历方式(非常好用)

    以下是关于Java 8独有的Map遍历方式的详细说明: 1. **通过`Map.keySet()`遍历** 在Java 8之前,遍历Map的传统方式是通过`Map.keySet()`获取所有的键,然后用for-each循环遍历这些键并获取对应的值。在Java 8中,...

    java中Map的两种遍历方法

    本文将详细探讨在Java中遍历`Map`的两种常用方法:通过`keySet()`方法和通过`entrySet()`方法。 ### 一、通过`keySet()`方法遍历`Map` #### 方法概述 `keySet()`方法返回一个包含`Map`中所有键的`Set`视图。通过...

    Java Map 遍历实例与效率比较

    主要提供java中的map的遍历实例及效率比较

    java-遍历map

    本文将深入探讨如何在Java中使用`keySet`方法来遍历`Map`集合,以及相关的知识点。 ### 一、Java Map接口简介 `Map`接口是Java集合框架的一部分,它提供了存储和检索唯一键对象及其对应的值对象的方法。一个`Map`...

    java集合MAP三种遍历

    本文将详细介绍Java中Map集合的三种遍历方法及其应用场景、优缺点等,帮助读者更好地理解和掌握Map的使用技巧。 ### 一、Map简介 `Map`接口是Java集合框架的一部分,它提供了基于键值对的数据存储方式。常见的实现...

    Java Map 遍历比较齐全的解析.docx

    本篇将详细介绍Java中遍历`Map`的不同方法,以及如何获取`Map`的长度。 1. **遍历Map** - **方法一:通过`Map.keySet()`遍历** 这是最基础的遍历方式,通过获取`Map`的`keySet`,然后用增强型for循环遍历`keySet`...

    map遍历的三种方法

    Map 遍历是集合操作中的一种重要操作,一般来说,有三种方式来遍历 Map 集合:使用 values() 方法遍历、使用 keySet() 方法遍历和使用 entrySet() 方法遍历。 第一种方法:使用 values() 方法遍历 这个方法是最...

    map遍历的四种方法

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

    java Map遍历方法

    这篇博文主要探讨了如何遍历Java中的`Map`对象,下面将详细介绍几种常见的遍历`Map`的方法。 1. **迭代器法**: Java提供了`Map`接口的`entrySet()`方法,返回一个包含`Map`中所有键值对的`Set`视图。通过这个`Set...

    java遍历Map的几种方法分析

    在Java编程中,Map接口是用于存储键值对的数据结构,它提供了多种遍历Map的方法。本篇文章将详细分析Java中遍历Map的四种常见方法,帮助开发者更好地理解和运用这些技巧。 1. **for-each循环遍历** Java 5引入了...

    struts2中的map遍历

    在Struts2中,Map遍历是一个常见的功能,它允许开发者动态地展示或操作存储在Map中的数据。这个功能在处理表单提交、传递参数或者在视图层展示数据时尤为有用。 首先,让我们理解Map遍历的基本概念。Map是一种键值...

    map遍历的四种方式及性能比较

    ### Java中遍历Map的四种方式及性能比较 在Java编程中,`Map`是一种非常重要的数据结构,用于存储键值对。对于`Map`的遍历,不同的遍历方式有着不同的性能表现以及适用场景。本文将详细介绍四种常见的遍历`Map`的...

    java遍历Map对象的说有数据

    ### Java遍历Map对象的所有数据 在Java编程中,`Map`接口是Java集合框架中的一个关键组成部分,它用于存储键值对。本篇文章将详细解释如何遍历`Map`对象的所有数据,并介绍几种常见的遍历方法。我们将重点讨论通过`...

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

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

    Java中如何遍历Map对象的4种方法_.docx

    在 Java 中,遍历 Map 对象是常见的...在需要在遍历中删除条目时,使用 Iterator 是必要的。最后,尽量避免通过键查找值的方式,因为它可能导致不必要的性能损失。在实际编程中,应考虑代码的可读性、维护性和性能。

    JAVA遍历Map所有元素.doc

    在Java编程中,Map接口是数据结构中非常重要的一个部分,它存储键值对的数据。遍历Map的所有元素是常见的操作,特别是在处理数据或者进行调试时。本文将详细讲解两种主要的遍历Map元素的方法,并分析它们的效率差异...

    java map遍历的四种方法总结

    以下是Java中Map遍历的四种常见方法: 1. **传统迭代器方法**: 这是最基础的遍历Map的方法,通过调用`keySet()`方法获取Map的所有键,然后使用迭代器遍历键集。在每次迭代中,使用`get()`方法获取对应的值。 ```...

    遍历MAP的几种方法

    遍历MAP的几种方法,利用keyset进行遍历,它的优点在于可以根据你所想要的key值得到你想要的 values,更具灵活性

Global site tag (gtag.js) - Google Analytics