HashMap四种取值的效率问题_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > HashMap四种取值的效率问题

HashMap四种取值的效率问题

 2017/12/30 21:16:49  一边天  程序员俱乐部  我要评论(0)
  • 摘要:日常开发中会经常用到map来存取值,但是对于HashMap中的四种取值方式效率比对如下:1、我先在想map中存放了20000个键值对Map<String,String>map=newHashMap<>();inttotal=2000000;for(inti=0;i<total;i++){map.put(i+"",(i+1)+"");}2、四种取值方式比较1、Set<String>set=map.keySet();for(Stringkey:set)
  • 标签:has Map Hash 问题 效率
日常开发中会经常用到map来存取值,但是对于HashMap中的四种取值方式效率比对如下:

  1、我先在想map中存放了20000个键值对
class="java" name="code">   Map<String,String> map = new HashMap<>();
        int total=2000000;
        for(int i=0;i< total;i++){
            map.put(i+"",(i+1)+"");
        }


   2、四种取值方式比较
      1、
    
   Set<String> set = map.keySet();
        for (String key : set) {
            System.out.println(key + map.get(key));
        }


       2、
       Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
        while (it.hasNext()) {
            Map.Entry<String, String> entry = it.next();
            System.out.println("key=" + entry.getKey() + "value=" + entry.getValue());
        }


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


        4、
     
     for (String v : map.values()) {
            System.out.println(v);
        }


   比对结果:
      20000个键值:1、200 2、240 3、268  4、172
      200000个键值:1、786 2、568 3、1304 41137
      通过测试在map中存放20000个键值和200000个键值,自己多次运行每种取值方法,每次运行的花费的时间都不一样,所以在实际运用中根据具体情况和值的多少来处理把!
上一篇: 《王者荣耀》即将登陆Switch平台:公布问卷调查 下一篇: 没有下一篇了!
发表评论
用户名: 匿名