黑马程序员技术交流社区
标题:
Comparable
[打印本页]
作者:
周一川
时间:
2013-4-9 07:21
标题:
Comparable
在自定义的类中想要用TreeSet排序, 要提示实现ComparaTo方法 Comparable
作者:
秦久启
时间:
2013-4-9 10:42
/*按照年龄进行排序的*/
import java.util.*;
public class TreeSetDemo
{
public static void main(String args[]){
TreeSet t = new TreeSet();
t.add(new Person("zhangsan",20));
t.add(new Person("Lisi",23));
t.add(new Person("wangwu",45));
t.add(new Person("haha",63));
Iterator li = t.iterator();
while(li.hasNext()){
Object obj = li.next();
Person pp = (Person)obj;
sop(pp.getName() + "...." + pp.getAge());
}
}
public static void sop(Object obj){
System.out.println(obj);
}
}
class Person implements Comparable
{
private String name;
private int age;
public Person(String name,int age){
this.setName(name);
this.setAge(age);
}
public void setAge(int age){
this.age = age;
}
public int getAge(){
return this.age;
}
public void setName(String name){
this.name = name;
}
public String getName(){
return this.name;
}
public int compareTo(Object obj){
if(!(obj instanceof Person))
throw new RuntimeException("不是Person类");
Person p = (Person)obj;
if(this.age>p.age){
return 1;
}
if(this.age==p.age){
return this.name.compareTo(p.name);
}
return -1;
}
}
希望对楼主有所帮助
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2