更新時間:2020-08-27 16:34:07 來源:動力節(jié)點 瀏覽2530次
概念
首先,我們看看Set集合。
(01)Set是繼承于Collection的接口。它是一個不允許有重復(fù)元素的集合。
(02)AbstractSet是一個抽象類,它繼承于AbstractCollection,AbstractCollection實現(xiàn)了Set中的絕大部分函數(shù),為Set的實現(xiàn)類提供了便利。
(03)HastSet和TreeSet是Set的兩個實現(xiàn)類。
HashSet依賴于HashMap,它實際上是通過HashMap實現(xiàn)的。HashSet中的元素是無序的。
TreeSet依賴于TreeMap,它實際上是通過TreeMap實現(xiàn)的。TreeSet中的元素是有序的。
eg:
下面我們以遍歷違例來看看set集合的利用:
注意:這里Set集合中放入的是String類型,假如我們放入一個自己定義的類實例的時候,比如Person類實例,這時候我們要自己重新hashcode和equal方法,用自己的關(guān)鍵字段來重寫,因為當(dāng)使用HashSet時,hashCode()方法就會得到調(diào)用,判斷已經(jīng)存儲在集合中的對象的hash code值是否與增加的對象的hash code值一致;如果不一致,直接加進(jìn)去;如果一致,再進(jìn)行equals方法的比較,equals方法如果返回true,表示對象已經(jīng)加進(jìn)去了,就不會再增加新的對象,否則加進(jìn)去。
以上就是動力節(jié)點java培訓(xùn)機(jī)構(gòu)的小編針對“Java中的set集合類型及其接口的使用”的內(nèi)容進(jìn)行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。
相關(guān)閱讀
初級 202925
初級 203221
初級 202629
初級 203743