1、我先在想map中存放了20000个键值对
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个键值,自己多次运行每种取值方法,每次运行的花费的时间都不一样,所以在实际运用中根据具体情况和值的多少来处理把!