1. 程式人生 > >集合類關系

集合類關系

gpo ash enum hashmap 叠代 post 使用 tab con

技術分享圖片

HashMap和HashTable都實現了 Map接,因此很多特性非常相似,但是,他們也有以下不同點:

  1. HashMap允許鍵和值是null(只允許一個鍵是null),而HashTable不允許鍵或者值是null。
  2. HashMap不是線程同步,適合單線程,HashTable是線程同步,適合多線程。
  3. HashMap是非線程安全的,HashTable是線程安全的, 因為線程安全問題,HashMap效率比HashTable要高。
  4. HashMap提供了可供叠代的鍵的集合,因此HashMap是快速失敗的,HashTable提供了對鍵的列舉(Enumeration)
  5. 一般認為HashTable是一個遺留的類,一般不推薦使用,因為遺留內部很多沒有優化,即使在多線程環境下,也有同步的ConcurrentHashMap代替,沒必要使用。

集合類關系