Hashtable和HashMap的區別

2021-09-22 22:52:13 字數 456 閱讀 4953

1、都實現的map介面和序列化介面

2、是基於雜湊表實現的

3、預設載入因子都是0.75,通俗一點說就是當其容量達到初始值的75%,就會觸發擴容操作。

1、hashtable執行緒安全,hashmap執行緒不安全

2、預設初始化大小不一致,hashtable是11,hashmap是16

3、  hashmap中key和value都允許為null。hashtable中key和value都不允許出現null值,能編譯通過,但執行時會丟擲丟擲nullpointerexception異常。

4、hashmap的理論最大容量(1 << 30),hashtable的理論最大容量integer.max_value - 8

5、擴容方式不一致  hashtable擴容時,將容量變為原來的2倍加1,而hashmap擴容時,將容量變為原來的2倍。

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...