HashTable與HashMap的區別

2021-10-04 06:25:19 字數 365 閱讀 6065

(1)hashtable和hashmap都實現了map介面,但是hashtable的實現是基於dictionary抽象類。

(2)在hashmap中,null可以作為鍵,這樣的鍵只有乙個;可以有乙個或多個鍵所對應的值為null。當get()方法返回null值時,既可以表示hashmap中沒有該鍵,也可以表示該鍵所對應的值為null。因此,在hashmap中不能由get()方法來判斷hashmap中是否存在某個鍵,而應該用containskey()方法來判斷。而在hashtable中,無論是key還是value都不能為null。

(3)hashtable是執行緒安全的,它的方法是同步了的,可以直接用在多執行緒環境中。hashmap則不是執行緒安全的。在多執行緒環境中,需要手動實現同步機制。

資料結構之HashTable與HashMap

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

Java中HashTable和HashMap的區別

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

如何實現key, value有序的HashMap

想要寫個key,value有序的hashmap,出現效能問題,大家幫忙給個主意吧。b 先說下我的設計思路 b linkedhashmap裡面有乙個模擬的 雙向迴圈鍊錶 用來儲存entry的插入順序,我也可以採用這種方法來在插入的時候儲存key和value的有序。這裡暫定名為orderedhashma...