关于Comparable<T>解决List<bean>,依据bean的某个属性对list进行排序
之前在开发的过程中遇到调用Dao,返回一个list集合,需要对list进行排序,排序的标准假如是bean.creatTime(),在从数据库中查询的时候,可以再sql语句中加一个 order by creat_time,但是现在很流行的微服务架构,你的需求需要依赖其他的微服务数据时,可能需要我们自己处理我们收到的数据,这个时候就需要使用Comparable.Comparable是一个in
·
之前在开发的过程中遇到调用Dao,返回一个list集合,需要对list进行排序,排序的标准假如是bean.creatTime(),在从数据库中查询的时候,可以再sql语句中加一个 order by creat_time ,
但是现在很流行的微服务架构,你的需求需要依赖其他的微服务数据时,可能需要我们自己处理我们收到的数据,这个时候就需要使用Comparable.
Comparable是一个interface,他是java1.2就已经提出了,其实这是java攻城狮必会的基础。使用起来也很简单。
public class UserInfoVo implements Comparable<UserInfoVo>{
private Long id;
private String name;
private Long creatTime;
//省略若干代码。。。
@Override
public int compareTo(Userinfo o) {
return this.getCreatTime().compareTo(o.getCreatTime());
}
这里要重写Comparable<>中的compareTo()方法,设置排序标准
List<UserInfo> userInfoList = new ......
userInfoList.add(userList1);
userInfoList.add(userList2);
Collections.sort(userInfoList);
//只要是实现了这个接口的类,都可以用Collections.sort直接排序
菜鸡拙见,轻喷
更多推荐
已为社区贡献1条内容
所有评论(0)