java集合框架(Framework)的性能

关于Java集合框架里面常用类的性能测试比较,包括(ArrayList/LinkedList /Vector/Queue/TreeSet/HashSet/LinkedHashSet/TreeMap/HashMap/LinkedHashMap/IdentityHashMap/WeakHashMap/Hashtable)),下面是一组实验数据。测试者是Java编程思想的作者Bruce Eckel,原文见:http://www.artima.com/weblogs/viewpost.jsp?thread=122295

--- Array as List ---
size     get     set
   10     130     183
100     130     164
1000     129     165
10000     129     165
--------------------- ArrayList ---------------------
size     add     get     set iteradd insert remove
   10     121     139     191     435    3952     446
100      72     141     191     247    3934     296
1000      98     141     194     839    2202     923
10000     122     144     190    6880   14042    7333
--------------------- LinkedList ---------------------
size     add     get     set iteradd insert remove
   10     182     164     198     658     366     262
100     106     202     230     457     108     201
1000     133    1289    1353     430     136     239
10000     172   13648   13187     435     255     239
----------------------- Vector -----------------------
size     add     get     set iteradd insert remove
   10     129     145     187     290    3635     253
100      72     144     190     263    3691     292
1000      99     145     193     846    2162     927
10000     108     145     186    6871   14730    7135
-------------------- Queue tests --------------------
size    addFirst     addLast     rmFirst      rmLast
   10         199         163         251         253
100          98          92         180         179
1000          99          93         216         212
10000         111         109         262         384

-----------------

------------- TreeSet -------------
size       add contains   iterate
   10       746       173        89
100       501       264        68
1000       714       410        69
10000      1975       552        69
------------- HashSet -------------
size       add contains   iterate
   10       308        91        94
100       178        75        73
1000       216       110        72
10000       711       215       100
---------- LinkedHashSet ----------
size       add contains   iterate
   10       350        65        83
100       270        74        55
1000       303       111        54
10000      1615       256        58
-------------------------------

---------- TreeMap ----------
size     put     get iterate
   10     748     168     100
100     506     264      76
1000     771     450      78
10000    2962     561      83
---------- HashMap ----------
size     put     get iterate
   10     281      76      93
100     179      70      73
1000     267     102      72
10000    1305     265      97
------- LinkedHashMap -------
size     put     get iterate
   10     354     100      72
100     273      89      50
1000     385     222      56
10000    2787     341      56
------ IdentityHashMap ------
size     put     get iterate
   10     290     144     101
100     204     287     132
1000     508     336      77
10000     767     266      56
-------- WeakHashMap --------
size     put     get iterate
   10     484     146     151
100     292     126     117
1000     411     136     152
10000    2165     138     555
--------- Hashtable ---------
size     put     get iterate
   10     264     113     113
100     181     105      76
1000     260     201      80
10000    1245     134      77

posted @ 2010-02-24 04:12  macula7  阅读(383)  评论(0编辑  收藏  举报