`
zhaoshunxin
  • 浏览: 28951 次
  • 来自: 济南
社区版块
存档分类
最新评论

Map迭代效率

    博客分类:
  • JAVA
 
阅读更多

Map迭代方式比较

Bug: XXX makes inefficient use of keySet iterator instead of entrySet iterator
Pattern id: WMI_WRONG_MAP_ITERATOR, type: WMI, category: PERFORMANCE

This method accesses the value of a Map entry, using a key that was retrieved from a keySet iterator. It is more efficient to use an iterator on the entrySet of the map, to avoid the Map.get(key) lookup.

for (String key : map.keySet()) {
 System.out.println("key = " + key + ", value = " + map.get(key));
}
此处findbugs提示的是效率高低问题

我们应该尽量使用以下方式进行map的遍历

for (Entry<?,?> entry: map.entrySet()) {
 System.out.println("key = " +entry.getKey() + ", value = " + entry.getValue());
}

分享到:
评论
1 楼 children1987 2015-07-20  
多谢!

相关推荐

    hbase-kmeans:使用 HBase 和 Map Reduce 的迭代 k 均值

    通过迭代运行 Map Reduce 作业,在 HBase 平台上使用 K-means 对能源效率数据集 ( ) 进行聚类。 数据加载到 Hbase 由 DataLoader 类执行。 该类将 Energy Efficiency 数据集(通过将数据视为 10 维特征向量)导入名...

    ruby迭代map的简洁写法实现原理分析

    简便写法带来的是很明显的效率提升,可是这看似魔术一般的参数,背后的原理是怎样的呢? &符号 如果把上面方法调用的&符号去掉,可以很明显得看到,是把:upcase这个符号传到方法中,作为方法的参数。 实际

    基于迭代填充的内存计算框架分区映射算法

    然后,根据模型和定义求解,设计扩展式数据分区算法( EPA) 和迭代式分区映射算法( IMA) ,在 Map 端建立一对多分区函数,并通过分区函数将部分数据填.入扩展区内,在数据分布局部感知后再执行扩展区迭代式的多轮...

    基于改进PSO算法的MAP图标定点选择新方法

    为提高基于MAP图的控制系统驱动...为提高算法执行效率,对粒子群算法的迭代准则、惯性权重和学习因子进行改进。结果表明,改进后的粒子群算法收敛速度快,寻优精度高,仅需较少的标定数据即可制作控制效果较佳的MAP图。

    java反射封装结果集内容到pojo

    当我们从数据库读出数据得到ResultSet... 这里面还有一段代码,是把数据库结果集封装到Map代替pojo,有些人也许认为不符合OO思想,但是这还没有成为一个定论,而且Map和List,在迭代时的效率非常高,我认为值得这样去做

    基于Spark的并行遗传算法研究

    当前Spark分布式编程框架由于内存计算得到了快速发展,相对于传统Map Reduce并行编程模型在迭代运算上有明显优势。针对串行遗传算法处理大规模问题能力有限的现状,提出了一种基于Spark平台的粗粒度并行遗传算法(SPGA)...

    【面试系列】并发容器之ConcurrentHashMap

    微信公众号:放开我我还能学 ...这就导致了所有并发操作都要竞争同一把锁,一个线程在进行同步操作时,其他线程只能等待,大大降低了并发操作的效率。 Collections#SynchronizedMap 同步包装器 SynchronizedMap

    Java数据存储类型ArrayList、HashSet、HashMap、LinkedList使用不同遍历方法效率研究By Python

    Java不同数据存储类型使用不同遍历方法效率研究 GitHub代码仓库 数据存储类型 ArrayList HashSet HashMap LinkedList 遍历方法 传统遍历方法 for(int i=0;i&lt;list.size();i++) { String str = list.get(i); ... ...

    谷歌 B-Tree C++ 模板库.

    类似于STL的map、set、multimap和multiset模板,C++ B-tree也提供了btree_map、btree_set、btree_multimap和btree_multiset等模板。 B-tree(多路搜索树,并不是二叉的)是一种常见的数据结构。使用B-tree结构...

    论文研究-旅行商问题的N维空间联通图算法与分析.pdf

    和现有算法的基于局部分析或通过反复迭代逐步达到满意解的方式不同,作者首次提出了在N维欧氏空间Rn中求解TSP问题的N维空间联通图算法(Rn-Connectivity Map Algorithm,nDCM Algorithm)。该算法根据R2中n点(v1...

    STL学习过程中的代码笔记

    使用容器可以方便地存储和管理数据,例如使用vector动态数组来存储元素,使用map实现键值对的映射关系等。此外,STL中的算法也让我受益匪浅。通过调用STL提供的算法函数,可以轻松地实现排序、查找、遍历等操作,极...

    STL 源码剖析(侯捷先生译著)

    6.4.3 copy,强化效率无所不用其极 314 6.4.4 copy_backward 326 6.5 Set 相关算法(应用于有序区间) 328 6.5.1 set_union 331 6.5.2 set_intersection 333 6.5.3 set_difference 334 6.5.4 set_symmetric_...

    STL源码剖析.pdg

    6.4.3 copy,强化效率无所不用其极 314 6.4.4 copy_backward 326 6.5 set 相关算法(应用于有序区间) 328 6.5.1 set_union 331 6.5.2 set_intersection 333 6.5.3 set_difference 334 6.5.4 set_symmetric_...

    廖雪峰python3 完整带索引,图片 最新教程 pdf版

    map/reduce filter sorted 返回函数 匿名函数 装饰器 偏函数 模块 使用模块 安装第三方模块 单元测试 文档测试 IO编程 文件读写 StringIO和BytesIO 操作文件和目录 序列化 进程和线程 多进程 多线程 ThreadLocal ...

    预测算法调研报告.doc

    相比Ha doop,Spark是一个分布式内存型计算框架,它在Hadoop MapReduce优点的基础上,提出了RDD数据模型,提供了多种算子,并且可以将计算的中 间结果存放到内存中,这使得迭代计算的效率更高,更适合于实时计算、...

    Python中常用的高阶函数实例详解

    前言 高阶函数指的是能接收函数作为参数的函数或类;python中有一些内置的高阶函数,在...map函数将一个函数和序列/迭代器(可以传入多个)作为参数,应用函数到序列中的每个元素,返回一个迭代器。 In [4]: a = list

    leetcode2sumc-Programming-Practice:编程实践

    轮胎、回溯、效率优化 堆栈和队列 # 问题 解决方案 困难 相关话题/想法 20 简单的 2020/08/14 日常练习,stack & hash map(unordered_map) 链表和数组 # 问题 解决方案 困难 相关话题/想法 141 简单的 循环链表; ...

Global site tag (gtag.js) - Google Analytics