Java 集合系列-第八篇-Map架構

Map架構

Map 是映射接口,Map中存儲的內容是鍵值對(key-value)。安全

AbstractMap 是繼承於Map的抽象類,它實現了Map中的大部分API。其它Map的實現類能夠經過繼承AbstractMap來減小重複編碼。架構

SortedMap 是繼承於Map的接口。SortedMap中的內容是排序的鍵值對,排序的方法是經過比較器(Comparator)。編碼

NavigableMap 是繼承於SortedMap的接口。相比於SortedMap,NavigableMap有一系列的導航方法;如"獲取大於/等於某對象的鍵值對"、「獲取小於/等於某對象的鍵值對」等等。線程

TreeMap 繼承於AbstractMap,且實現了NavigableMap接口;所以,TreeMap中的內容是「有序的鍵值對」!3d

HashMap 繼承於AbstractMap,但沒實現NavigableMap接口;所以,HashMap的內容是「鍵值對,但不保證次序」!對象

Hashtable 雖然不是繼承於AbstractMap,但它繼承於Dictionary(Dictionary也是鍵值對的接口),並且也實現Map接口;所以,Hashtable的內容也是「鍵值對,也不保證次序」。但和HashMap相比,Hashtable是線程安全的,並且它支持經過Enumeration去遍歷。blog

WeakHashMap 繼承於AbstractMap。它和HashMap的鍵類型不一樣,WeakHashMap的鍵是「弱鍵」。排序

相關文章
相關標籤/搜索