1.集合除了map以外 都實(shí)現(xiàn)了collection接口 所以總體關(guān)系是
collectin > {set,queue,list}? set >{enumset,sortedset,hashset} list>{linkedlist,arraylist,vector} queue>{deque,priorityqueue}
sortedset>treeset, hashset>linkedhashset ,vector>stack
map>{EnumMap,HashMap,HashTable,SortedMap,WeakHashMap}
HashMap>LinkedHashMap??
HashTable>Properties
SortedMap>TreeMap
hashset 和LinkedHashSet區(qū)別:
共同點(diǎn):都是通過(guò)hashcode計(jì)算得到存儲(chǔ)位置
不同點(diǎn):hashset 元素?zé)o序雷逆。LinkedHashSet 維護(hù)了一張鏈表來(lái)記錄元素插入次序渊季。所以是有序得
TreeSet特性:元素有序不過(guò)不是插入順序 而是根據(jù)元素大小進(jìn)行排序弯蚜。并且存儲(chǔ)位置是根據(jù)紅黑樹(shù)得數(shù)據(jù)結(jié)構(gòu)來(lái)進(jìn)行存儲(chǔ)得并不是根據(jù)hashcode計(jì)算
linkedlist:采用鏈表存儲(chǔ)元素?
線程安全:Properties(集合中元素不可為null),vector, hashTable
線程不安全:hashset ,LinkedHashSet ,TreeSet,enumset,arraylist,linkedlist