大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java set集合元素簡單匯總解析

Java set集合元素簡單匯總解析

更新時間:2020-05-29 15:16:44 來源:動力節點 瀏覽2573次

Set接口簡介

Set接口和List接口一樣,同樣繼承自Collection接口,它與Collection接口中的方法基本一致,并沒有對Collection接口進行功能上的擴充,它是比Collection接口更加嚴格了。與List接口不同的是,Set接口元素無序,并且都會以某種規則保證存入的元素不出現重復。

Set接口主要有兩個實現類,分別是HashSet和TreeSet。其中,HashSet根據對象的哈希值來確定元素在集合中的存儲位置,因此具有良好的存取和查找性能。TreeSet則是以二叉樹的方式來存儲元素,它可以實現對集合中的元素進行排序

HashSet集合

HashSet是Set接口的一個實現類,它所存儲的元素是不可重復的,并且元素都是無序的。當向HashSet集合中添加一個對象時,首先會調用該對象的hashCode()方法來計算對象的哈希值,從而確定元素的存儲位置。如果此哈希值相同,再調用對象的equals()方法來確保該位置沒有重復元素。Set集合與List集合存取元素的方式都一樣。

通過一個案例來演示HashSet集合的用法:

Java set集合元素簡單匯總解析

結論:

當向集合中存入元素時,為了保證HashSet正常工作,要求在存入對象時,重寫Object類中的hashCode和equals()方法。

上述案例將字符串存入HashSet時,String類已經重寫了hashCode()和equals()方法。但是如果將Student對象存入HashSet,結果又會怎樣呢?

Java set集合元素簡單匯總解析

Student類重寫了Object類的hashCode()和equals()方法。在hashCoded()方法中返回id屬性的哈希值,在equals()方法中比較對象的id屬性是否相等,并返回結果。當調用HashSet集合的add()方法添加stu3對象時,發現它的哈希值與stu2對象相同,而且stu2.equals(stu3)返回true。HashSet集合認為兩個對象相同,因此重復的Student對象對成功去除了。

以上就是動力節點java培訓機構的小編針對“Java set集合元素簡單匯總解析”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 亚洲成年网站 | 日韩欧美第一区二区三区 | 久久99网站 | 日韩女同视频 | 97视频免费看 | 成人欧美一区二区三区在线观看 | 日日摸夜夜摸狠狠摸97 | 爱爱视频天天看 | 国产高清国内精品福利99久久 | 久热视线观看免费视频 | 国产久视频观看 | 欧美综合视频在线观看 | 国产精品久久久久天天影视 | 久久视频免费在线观看 | 波多野结衣亚洲一区 | 5060午夜一级毛片免费观看 | 97国产精品国产品国语字幕 | 国产在线精品香蕉综合网一区 | 精品国产综合区久久久久99 | 亚洲欧美综合 | 欧美视频一区 | 九九热国产 | 在线观看视频中文字幕 | 日本xxx高清免费视频 | 国产一级二级在线观看 | 在线观看中文字幕亚洲 | 一级毛片一级毛片一级级毛片 | 欧美肥老妇做爰视频 | 99热在这里只有精品 | 大杳焦伊人久久综合热 | 欧美在线观看视频网站 | 亚洲一区二区三区国产精品 | 大乳欲妇三级一区二区三区 | 俺去鲁婷婷六月色综合 | 日韩国产精品99久久久久久 | 国产成人夜间影院在线观看 | 中文字幕色综合久久 | 国产成人久久综合热 | 国产 欧美 日产中文 | a级精品九九九大片免费看 a级毛片高清免费视频 | 中国妞xxx的视频 |