TreeSet和Hashde、equals

public class HashSetDemo {
  public static void main(String[] args){
    method_01();
      
  }
  public static void method_01(){
   
    /*  toString()方法public String toString()
      该方法返回一个字符串,它的值等于:
       getClass().getName() + '@' + Integer.toHexString(hashCode())
     */

      HashSet  ts=new HashSet();
      ts.add(new Person("a", 12));
      ts.add(new Person("b", 12));
      System.out.println(ts.size());
  }
 }

class  Person{
     private String name;
     private int  age;
     public Person(String name,int age){
     this.name=name;
     this.age=age;
     }
     @Override
     //覆写父类的方法
    public int hashCode() {
    System.out.println("hashCode---->1");
      return 1;
    }
    
    @Override
    public boolean equals(Object obj) {
        if(!(obj instanceof Person))
            return false; //如果obj不是Person的实例,返回false
         Person P1=(Person)obj;
         System.out.println(this.age+"..equlas.."+P1.age);
         return  this.name.equals(P1.name)&&this.age==P1.age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    
    
}
posted @ 2012-09-30 14:37  昨天.今天.明天  阅读(189)  评论(0)    收藏  举报