package com.zyf.day16;
import java.util.HashSet;
class Person{
int id;
String name;
public Person(int id, String name) {
super();
this.id = id;
this.name = name;
}
@Override
public String toString() {
return "Person [id=" + id + ", name=" + name + "]";
}
@Override
public int hashCode() {
System.out.println("======hashCode=========");
return this.id;
}
@Override
public boolean equals(Object obj) {
System.out.println("=======equals===============");
Person p = (Person)obj;
return this.id == p.id;
}
}
public class demo2 {
public static void main(String[] args){
/* HashSet set = new HashSet();
set.add("1");
set.add("2");
set.add("3");
set.add("1");
System.out.println("集合的元素:" + set);*/
HashSet set = new HashSet();
set.add(new Person(1,"aa"));
set.add(new Person(2,"bb"));
set.add(new Person(3,"cc"));
set.add(new Person(1,"dd"));
System.out.println(set);
}
}
HaseSet存取自定义数据
最新推荐文章于 2022-08-27 13:39:50 发布
本文展示了一个使用Java实现HashSet的示例,并自定义了Person类来覆盖hashCode和equals方法,确保集合中对象的唯一性。通过这个例子,读者可以了解到如何在自定义类中正确实现这两个方法,以支持HashSet等集合类的正常工作。
7317

被折叠的 条评论
为什么被折叠?



