map遍历性能记录

Posted xingrui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了map遍历性能记录相关的知识,希望对你有一定的参考价值。

map遍历可以通过keySet或者entrySet方式。

性能上:entrySet略胜一筹,原因是keySet获取到key后再根据key去获取value,在查一遍,所以慢一些。

keySet:

//先获取map集合的所有键的Set集合
Set<String> keySet = map.keySet();
//有了Set集合,就可以获取其迭代器
Iterator<String> it = keySet.iterator();
while (it.hasNext()) {
    String key = it.next();
//有了键可以通过map集合的get方法获取其对应的值。
String value = map.get(key);
}

entrySet:

//通过entrySet()方法将map集合中的映射关系取出(这个关系就是Map.Entry类型)
Set<Map.Entry<String, String>> entrySet = map.entrySet();
//将关系集合entrySet进行迭代,存放到迭代器中
Iterator<Map.Entry<String, String>> it2 = entrySet.iterator();
while (it2.hasNext()) {
    //获取Map.Entry关系对象me
    Map.Entry<String, String> me = it2.next();
    //通过关系对象获取key
    String key2 = me.getKey();
    //通过关系对象获取value
    String value2 = me.getValue();
}

 

以上是关于map遍历性能记录的主要内容,如果未能解决你的问题,请参考以下文章

CSP核心代码片段记录

java Map 怎么遍历

Java Map各遍历方式的性能比较

HashMap源码:聊聊Map的遍历性能问题

HashMap循环遍历方式及其性能对比

java Map 怎么遍历