您当前的位置: 首页 >  ar

蓝不蓝编程

暂无认证

  • 5浏览

    0关注

    706博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

通过实现Comparable接口结合TreeSet来对对象自动排序

蓝不蓝编程 发布时间:2014-04-20 18:20:28 ,浏览量:5

经过会遇到这样的情况,对于某个对象数组或者链表要按照一定的规则进行排序,那么我们该怎么做呢? 如遇到这样的需求: 1.需求1 对于学生对象按照年龄进行排序,年龄小的排在前面。 单单看到这样的需求,实现起来是比较简单的,自己写个函数实现一下快速排序或者比较土的冒泡排序,按照年龄来排序就可以了。我们再看看下面的需求 2.需求2 对于学生对象,按照年龄进行排序,年龄小的排在前面,年龄相同的,身高小的排在前面。 3.需求3 对于学生对象,按照年龄进行排序,年龄小的排在前面;年龄相同的,身高小的排在前面;身高相同时,体重轻的排在前面。 。。。

这样的需求,可能会随着页面的复杂化,越来越来复杂,如果要自己去做的话,估计得多层嵌套了,逻辑非常复杂,那是否有现成的比较简单的机制呢。

答案就是实现Comparable接口。

具体样例如下:

public class Student implements Comparable{      private int age;            public Student(int age)      {          this.age = age;      }      @Override      public int compareTo(Object obj) {          Student stu = (Student)obj;          if(this.age>stu.age)              return 1;          else if(this.agestu.age)          return -1;      else if(this.age

关注
打赏
1639405877
查看更多评论
立即登录/注册

微信扫码登录

0.0401s