都是數組+拉鍊實現的哈希表,可是具體實現上差異大了數組
Hashtable全表鎖
HashMap多線程不安全,須要本身封裝
ConcurrentHashMap加細粒度鎖,讀不加鎖,若是讀到空值再加鎖。注意這三個關鍵字final,transient,volatile安全
Hashtable不容許用 null做爲鍵和值
HashMap容許全局最多一個null鍵,可是容許無數個null值
ConcurrentHashMap不容許用 null做爲鍵和值數據結構
參考文檔
http://blog.csdn.net/kingzone_2008/article/details/8179701
http://zhangshixi.iteye.com/blog/672697
http://ifeve.com/concurrenthashmap/多線程