久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

Java HashSet集合存儲遍歷學生對象代碼實例

瀏覽:102日期:2022-09-03 09:08:58

Java HashSet集合存儲遍歷學生對象代碼實例

由于Set集合是不存儲重復元素的,所以在做此案例時,如果我正常添加一個重復元素是什么結果呢?

public class HashSetDemo { public static void main(String[] args) { //創建HashSet集合對象 HashSet<Student> hashSet = new HashSet<Student>(); //創建學生對象 Student s1 = new Student('愛學習', 21); Student s2 = new Student('愛Java', 22); Student s3 = new Student('堅持不懈', 23); Student s4 = new Student('愛Java', 22); //把學生添加到集合 hashSet.add(s1); hashSet.add(s2); hashSet.add(s3); hashSet.add(s4); //遍歷集合(增強for循環) for (Student s : hashSet) { System.out.println(s.getName() + ',' + s.getAge()); } }}

運行結果:

Java HashSet集合存儲遍歷學生對象代碼實例

通過運行結果,我們發現,重復的元素仍然被添加進去,是什么原因呢? 根據源碼分析和HashSet底層數據結構可以知道,如果兩個對象的哈希值相同(hashCode方法),并且對象的內容也相同(equals方法),是不會存儲在哈希表的。所以我們需要在被存儲的對象類中重寫hashCode方法和equals方法,來解決添加了重復元素的問題。

在對象類中重寫hashCode方法和equals方法后(自動生成即可)運行上面的代碼,運行結果:

Java HashSet集合存儲遍歷學生對象代碼實例

可見,重復的元素未被添加到集合。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 精品国产乱码久久久久久蜜臀 | 欧美精品中文字幕久久二区 | 中文字幕视频在线播放 | 国产视频91在线 | 欧美日韩成人在线视频 | 91人人| 亚洲成人一区二区三区 | 午夜日韩| 色婷婷久久久swag精品 | 蜜桃视频网站在线观看 | 亚洲综合大片69999 | 国产精品毛片一区二区在线看 | 亚洲一区二区在线 | 欧美精品在线观看 | 永久精品| 一本色道精品久久一区二区三区 | 亚洲精品二区 | 国产精品7| 日韩一区二区在线观看 | 在线日韩中文字幕 | 欧美精品一区二区三区蜜桃视频 | 日韩免费网站 | 久久久久亚洲精品 | 国产精品乱码人人做人人爱 | 久久久91精品国产一区二区三区 | 国产91视频在线观看 | 久久成人精品 | 欧美a网| 日本三级在线网站 | 久久久精彩视频 | 天堂视频中文字幕 | 精品成人佐山爱一区二区 | 国产精品久久久久久久久久免费看 | 国产电影一区二区三区图片 | 午夜影院普通用户体验区 | 中国女人黄色大片 | 黄色一级大片在线免费看产 | 午夜成人免费视频 | 成人在线视频一区 | 91爱爱| 人人干操|