java中HashSet去重的方法

package day8_15;
import java.util.HashSet;
import java.util.Set;
class Employee{
    private int no ;
    private String name;
    public Employee() {
        super();
    }
    public Employee(int no, String name) {
        super();
        this.no = no;
        this.name = name;
    }
    public int getNo() {
        return no;
    }
    public void setNo(int no) {
        this.no = no;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    @Override
    public int hashCode() {
        //哈希地址
        return name.hashCode()+no;
    }
    @Override
    public boolean equals(Object obj) {
        Employee e = (Employee)obj;
        return this.no==e.no&&this.name==e.name;
    }
    @Override
    public String toString() {
        return "编号:"+no+"姓名:"+name;
    }    
}
public class TestSet {
    public static void main(String[] args) {
        Set<Employee> emps = new HashSet<>();
        Employee zhangsan = new Employee(1, "张三");
        Employee lisi  = new Employee(2, "李四");
        Employee wangwu  = new Employee(1, "张三");
        emps.add(wangwu);
        emps.add(lisi);
        emps.add(zhangsan);
        emps.forEach(System.out::println);
    }
}
---------------------
作者:java大数据专家
来源:CSDN
原文:https://blog.csdn.net/qq_42676052/article/details/81749773
版权声明:本文为博主原创文章,转载请附上博文链接!

posted @ 2019-08-03 18:14  天涯海角路  阅读(1892)  评论(0)    收藏  举报