Java 集合Set攻略1 HashSet

2021-08-30 02:13:12 字數 720 閱讀 1071

先吐槽:當你了解多了,你會發現後面的東西so easy,就比如說 hashset

1 資料結構

老規矩,先上圖

兄弟,你看的沒錯,他娘的,hashset 底層的資料結構是乙個hashmap,沒啥研究的價值了,稍微剝開點源**了解下好歹對得起你進來看一下對吧

2 add 方法

真相是不是如此簡單,例項化實際是建立了乙個hashmap,add方法實際是給hashmap新增屬性,只不過是將實際的值存放在key裡面,value值存了個空物件,你想問我為毛這麼設計,他娘的,我哪知道,自己再扒扒去,借助hashmap key不重複的特性保證了hashset裡面元素的不重複

remoce方法還是對hashmap操作,是不是他娘的簡單到不能再簡單了,看過hashmap那篇文章,這篇文章只要看一分鐘秒懂,螞蟻就是這麼吊,最糙的話教會你一些乾貨

Java集合 Set集合總結

特點 無序 不允許重複的 實現類 hashset 通過hash碼資料結構進行儲存的 無序 不重複 如果想要判斷兩個物件是否是同乙個物件 通常情況比較位址,但是現在需要通過制定內容來判斷是否相同 hashcode 判斷的其各個屬性的hashcode 而非物件真正的位址 結論 如果hashcode相同 ...

JAVA集合學習 Set

可以分為3種集合set list,map,其中常用的有hashset,arraylist,hashmap 1,collection是set,list,queue3個介面的父介面主要方法如下 collection a new arraylist collection b new arraylist 新...

Java集合 Set架構

set的實現類是基於map來實現的 hashset是通過hashmap實現的,treeset是通過treemap實現的 首先,我們看看set架構。01 set 是繼承於collection的介面。它是乙個不允許有重複元素的集合。02 abstractset 是乙個抽象類,它繼承於abstractco...