黑马程序员技术交流社区

标题: 在新的自定义类中,如何覆盖hashCode()和equals()方法 [打印本页]

作者: 黄坚声    时间: 2012-5-11 17:17
标题: 在新的自定义类中,如何覆盖hashCode()和equals()方法
在新的自定义类中,如何覆盖hashCode()和equals()方法?:L
作者: 李月    时间: 2012-5-11 17:20
class Person
{
        private String name;
        private int age;
        Person(String name,int age)
        {
                this.name=name;
                this.age=age;
        }
        public int hashCode()//重写hashCode()自已调用
        {
                return name.hashCode()+age*39;//保证值的唯一性
        }
        public boolean equals(Object obj)//重写equals(Object obj)自已调用
        {
                if(!(obj instanceof Person))
                        return false;
                Person p=(Person)obj;
                return this.name.equals(p.name)&&this.age==p.age;
        }
       
        public String getName()
        {
                return name;
        }
        public int getAge()
        {
                return age;
        }
       
}
作者: 李啸    时间: 2012-5-11 17:20
一种是自己通过编译工具(Eclipes)自动生成
还有一种就是自己手写 不过建议自动生成没有必要去自己修改里面写好的方法




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2