首頁  >  問答  >  主體

Java中HashMap,LinkedHashMap,WeakHashMap,HashTable,TreeMap等的区别?

Java中

HashMap
LinkedHashMap
WeakHashMap
HashTable
IdentityHashMap
TreeMap

的区别?

和它们各自的实现特点
比如HashMap用数组和链表来保存等。

阿神阿神2713 天前804

全部回覆(2)我來回復

  • 黄舟

    黄舟2017-04-18 09:50:24

    不知道你有沒有學過資料結構?

    回覆
    0
  • 大家讲道理

    大家讲道理2017-04-18 09:50:24

    HashMap: 基於Hash表實現的Map(Key-Value)類型
    TreeMap:有序的Map(基於key自然排序)
    LinkedHashMap:有序的Map(基於插入順序排序)
    WeakHashMap:只持有key的弱引用,所以當key被回收時,可自動刪除對應key的那筆記錄。
    IdentityHashMap:一般Map實作中key的值相等(equals為true)就認為是同一個key,這個Map是以同一個物件(引用)作為判斷依據,官方不建議使用。
    HashTable:類似HashMap,key或value可為null,執行緒安全的,老式實作。
    最後,建議樓主這類問題可以直接看看Java SE的手冊,裡面都有詳細的介紹:Java SE API

    回覆
    0
  • 取消回覆