java map對象的效率比較

 @SuppressWarnings("unchecked")  
public class MapPerformance {  
    public static void main(String[] args) {  
        MapPerformance test = new MapPerformance(10 * 10000);  
        out.print(StringUtils.center("Test Map Performance: loop=" + test.loop, 80, '-'));  
        out.printf("\n sssssss", "", "put", "put", "remove", "get",   
                "iterator","for");  
        test.benchmark(new HashMap());  
        test.benchmark(new Hashtable());  
        test.benchmark(new LinkedHashMap());  
        test.benchmark(new IdentityHashMap());  
        test.benchmark(new TreeMap());  
        test.benchmark(new WeakHashMap());  
        test.benchmark(new ConcurrentHashMap()); 
    }  
     
    private int loop = 10000;  
    public MapPerformance(int loop) {  
        this.loop = loop;  
    }  
    public void benchmark(Map map) {  
        out.printf("\n s", map.getClass().getSimpleName());  
        int j;  
        StopWatch watch = null;  
        //1.測試順序性能(Add)  
        (watch = new StopWatch()).start();  
        for (int i = 0; i < loop; i++) {  
         map.put(i, i);
        }  
        watch.stop();  
        out.printf("d", watch.getTime());  
        //2.測試隨機插入性能(Random insert)  
   
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章