更新時間:2020-08-27 16:34:07 來源:動力節(jié)點 瀏覽2598次
概念
首先,我們看看Set集合。
(01)Set是繼承于Collection的接口。它是一個不允許有重復元素的集合。
(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)鍵字段來重寫,因為當使用HashSet時,hashCode()方法就會得到調(diào)用,判斷已經(jīng)存儲在集合中的對象的hash code值是否與增加的對象的hash code值一致;如果不一致,直接加進去;如果一致,再進行equals方法的比較,equals方法如果返回true,表示對象已經(jīng)加進去了,就不會再增加新的對象,否則加進去。
以上就是動力節(jié)點java培訓機構(gòu)的小編針對“Java中的set集合類型及其接口的使用”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。