对数据库中查询到的结果进行排序,一般开发中,实体类是没有实现Comparable接口的,所以不能实现compareTo()方法进行排序,

只能用Comparator去进行排序,只需要在带排序的集合中加入以下代码就能实现排序功能了。compare比较的o1和o2,返回值大于0,则o1大于o2,返回值等于0,则o1等于o2。

 

Collections.sort(clientCircleList,new Comparator<ClientCircle>(){
@Override
public int compare(ClientCircle o1, ClientCircle o2) {
if(o2.getUid() > o1.getUid()){
return 1;
}
if(o2.getUid() == o1.getUid()) {
return (int) (o2.getId() - o1.getId());
}
return -1;
}
});
for (ClientCircle clientCircle : clientCircleList) {
System.out.println("UID: "+clientCircle.getUid()+ "+ID: " + clientCircle.getId());
}

比较UId的大小,相同则继续计较ID的大小,结果如下:

Comparator进行List集合排序

 

相关文章:

  • 2021-10-23
  • 2022-12-23
  • 2022-01-02
  • 2022-01-09
  • 2022-01-11
  • 2022-12-23
  • 2021-07-31
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-07-20
  • 2021-09-10
  • 2021-12-25
  • 2021-09-28
相关资源
相似解决方案