黑马程序员技术交流社区

标题: 集合排序 [打印本页]

作者: kemeng    时间: 2015-3-19 12:15
标题: 集合排序
  1. /*
  2. 往TreeSet集合里面存储自定义对象学生
  3. 想按照学生的年龄进行排序
  4. */
  5. import java.util.*;
  6. class Demo1
  7. {
  8.         public static void main(String[] args)
  9.         {
  10.                 TreeSet ts=new TreeSet();
  11.                 ts.add(new Student("lisi02",22));
  12.                 ts.add(new Student("lisi07",20));
  13.                 ts.add(new Student("lisi09",19));
  14.                 ts.add(new Student("lisi01",19));

  15.                 Iterator it=ts.iterator();
  16.                 while(it.hasNext())
  17.                 {
  18.                         Student stu=(Student)it.next();
  19.                         System.out.println(stu.getname()+"..."+stu.getage());
  20.                 }
  21.         }
  22. }

  23. class Student implements Comparable
  24. {
  25.         private String name;
  26.         private int age;
  27.         Student(String name,int age)
  28.         {
  29.                 this.name=name;
  30.                 this.age=age;
  31.         }
  32.         public int compareTo(Object obj)
  33.         {
  34.                 if(!(obj instanceof Student))
  35.                         throw new  RuntimeException("不是学生对象");
  36.                 Student s=(Student)obj;

  37.                 System.out.println(this.name+"..."+s.name);
  38.                 if(this.age>s.age)
  39.                         return 1;
  40.                 if(this.age==s.age)
  41.                 {
  42.                         return this.name.compareTo(s.name);
  43.                 }
  44.                 return -1;
  45.         }

  46.         public String getname()
  47.         {
  48.                 return name;
  49.         }
  50.         public int getage()
  51.         {
  52.                 return age;
  53.         }
  54. }
复制代码







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