TreeMap,HashMap和LinkedHashMap的性能?

Vic*_*cky 8 java performance map

在TreeMap中 - 元素
在HashMap 中排序- 元素未排序

所以,如果我认为get,putremove方法这地图,我应该使用的性能?

Kei*_*all 5

HashMap除非您需要订购,否则请使用. HashMap是比较快的.

也就是说,您可以通过使用通用接口作为声明来轻松切换:

 Map<String,String> M = new HashMap<String,String>();
 ...use M lots of places...
Run Code Online (Sandbox Code Playgroud)

然后,您只需切换一个地方,您的代码就会使用新的地图类型.

编辑:

一个简单的计时测试:

import java.util.*;
class TimingTest {
  public static void main(String[] args) {
    Map<String,String> M = new HashMap<String,String>();
    long start = System.currentTimeMillis();
    for (int i = 0; i < 100000; i++) {
      M.put(Integer.toString(i), "foo");
    }
    long end = System.currentTimeMillis();
    System.out.println(end - start);
  }
}
Run Code Online (Sandbox Code Playgroud)