前面督惰,我們已經(jīng)系統(tǒng)的對List和Map進行了學(xué)習(xí)。接下來访娶,我們開始可以學(xué)習(xí)Set觉阅。相信經(jīng)過Map的了解之后留拾,學(xué)習(xí)Set會容易很多。畢竟鲫尊,Set的實現(xiàn)類都是基于Map來實現(xiàn)的(HashSet是通過HashMap實現(xiàn)的疫向,TreeSet是通過TreeMap實現(xiàn)的)。
首先谈火,我們看看Set架構(gòu)舌涨。
Paste_Image.png
- Set 是繼承于Collection的接口。它是一個不允許有重復(fù)元素的集合温技。
- AbstractSet 是一個抽象類舵鳞,它繼承于AbstractCollection,AbstractCollection實現(xiàn)了Set中的絕大部分函數(shù)抛虏,為Set的實現(xiàn)類提供了便利套才。
- HastSet 和 TreeSet 是Set的兩個實現(xiàn)類。
- HashSet依賴于HashMap错忱,它實際上是通過HashMap實現(xiàn)的挂据。HashSet中的元素是無序的崎逃。
- TreeSet依賴于TreeMap,它實際上是通過TreeMap實現(xiàn)的勒葱。TreeSet中的元素是有序的巴柿。