HashTable和HashMap的區別

2021-09-12 06:13:58 字數 517 閱讀 3619

hashmap

hashmap是基於雜湊表實現的,每乙個元素是乙個key-value對,其內部通過單鏈表解決衝突問題,容量不足(超過了閥值)時,同樣會自動增長。

hashmap是非執行緒安全的,只是用於單執行緒環境下,多執行緒環境下可以採用concurrent並發包下的concurrenthashmap。

hashmap 實現了serializable介面,因此它支援序列化,實現了cloneable介面,能被轉殖

hashmap中key和value都允許為null。key為null的鍵值對永遠都放在以table[0]為頭結點的鍊錶中。

hashtable

hashtable與hashmap第一點相同。

hashtable也是jdk1.0引入的類,是執行緒安全的,能用於多執行緒環境中。

hashtable與hashmap第三點相同。

hashtable和hashmap區別

待補充

Java中HashTable和HashMap的區別

1 hashtable的方法是同步的,hashmap不同步,所以在多執行緒情況下,使用的是hashtable 2 hashtable不允許null值 key和value都不可以 hashmap允許null值 key和value都可以 3 hashtable有乙個contains 方法,功能和cont...

資料結構之HashTable與HashMap

首先介紹一下hashtable 與hashmap hashtable類實現乙個雜湊表,該雜湊表將鍵對映到相應的值。任何非 null 物件都可以用作鍵或值。hashmap是基於雜湊表的map 介面的實現。此實現提供所有可選的對映操作,並允許使用 null 值和 null 鍵。hashmap不保證對映的...

Hashtable和Dictionary效能比較

在.net1.1裡經常會使用到hashtable,到裡.net 2.0以後我發現有了乙個很好用的idictionary實現類dictionary。但還是會擔心dictionary的檢索效率是否跟hashtable相當,據我了解arraylist的檢索效率是非常差的,binarysearch也不如ha...