您的位置:首页 > 编程语言 > Java开发

Java:遍历Map时使用Entry<>

2018-03-29 10:57 337 查看
摘要: 本文主要记录一下个人工作学习心得,没有深入分析。

今天,FindBugs提示了这样一个bug:

WMI: Inefficient use of keySet iterator instead of entrySet iterator (WMI_WRONG_MAP_ITERATOR)
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.

大致的意思就是,使用迭代器遍历
entrySet
的方式才是高效的方式。应当避免
Map.get(key)
,我这里胡解释一下,毕竟我们先获得keyset再用Key找Value,肯定不如把一个又一个词条entry都获得了,然后直接getValue要快……具体能快多少呢?Map越大越能看出差距来。
下面贴一个博文,简单说一下四种遍历方式。

遍历Map的四种方法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java