本帖最后由 zcbyzcb 于 2013-6-13 21:36 编辑
今天在学到TreeSet集合的时候,自定义一个Person类,然后向TreeSet里边添加Person对象,可是已经实现了Comparable接口,还是一个对象都加不进去,代码如下:- import java.util.*;
- class TreeSetDemo2
- {
- public static void main(String[] args)
- {
- TreeSet ts=new TreeSet();
- Person p=new Person("zhang",12);
- ts.add(p);
- //ts.add(456);
- //ts.add(789);
- //ts.add(789);
- //Person p=new Person("zhang",12);
- //sop(p.getName()+"----"+p.getAge());
- Iterator it=ts.iterator();
- while(it.hasNext())
- {
- sop(it.next());
- }
- }
- public static void sop(Object obj)
- {
- System.out.println(obj);
- }
- }
- class Person implements Comparable
- {
- private String name;
- private int age;
- Person(String name, int age)
- {
- this.name=name;
- this.age=age;
- }
- public String getName()
- {
- return this.name;
- }
- public int getAge()
- {
- return this.age;
- }
- public int CompareTo(Object obj)
- {
- if(!(obj instanceof Person))
- {
- throw new RuntimeException("不是本类对象");
- }
- Person p=(Person)obj;
- if(this.age>p.age)
- return 1;
- if(this.age==p.age)
- return 0;
-
- return -1;
- }
- }
复制代码 求解,大神们看看,是哪出错了。 |