- 实体类中 implements Comparable<ClaimsRelationshipExtVO>接口 重写compareTo()方法
-
public class ClaimsRelationshipExtVO implements Comparable<ClaimsRelationshipExtVO> { private Date updateTime; @Override public int compareTo(ClaimsRelationshipExtVO o) { return this.updateTime.compareTo(o.getUpdateTime()); } } -
llist集合排序
List list1 = aisinoSearchMapper.querySix(params); Collections.sort(list1, new Comparator<ClaimsRelationshipExtVO>() { @Override public int compare(ClaimsRelationshipExtVO o1, ClaimsRelationshipExtVO o2) { return o1.getUpdateTime().compareTo(o2.getUpdateTime()); } });
-
- list集合中存储map集合元素,根据map中value值排序
-
List list1 = new ArrayList<>(); Map<String,Object> map1 = new HashMap<String,Object>(); map1.put("updateTime","2020-02-28"); Map<String,Object> map2 = new HashMap<String,Object>(); map1.put("updateTime","2020-02-29"); list1.add(map1); list1.add(map2); //根据updateTime排序 Collections.sort(list, new Comparator<HashMap<String,Object>>() { @Override public int compare(HashMap<String, Object> o1, HashMap<String, Object> o2) { String date1 = String.valueOf(o1.get("updateTime")); String date2 = String.valueOf(o2.get("updateTime")); if (StringUtils.isNotEmpty(date1) && StringUtils.isNotEmpty(date2)){ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); try { long dateToSecond1 = sdf.parse(date1).getTime(); long dateToSecond2 = sdf.parse(date2).getTime(); //升序 if (dateToSecond1 > dateToSecond2){ return 1; } //降序 // if (dateToSecond2 > dateToSecond1){ // return 1; // } if (dateToSecond2 == dateToSecond1){ return 0; } return -1; }catch (Exception e){ e.printStackTrace(); } } return 0; } });
-
list集合根据对象属性排序
最新推荐文章于 2023-11-17 10:52:05 发布
本文详细介绍了在Java中如何通过实现Comparable接口和使用Comparator接口来对自定义实体类和Map集合进行排序。具体包括在实体类中重写compareTo方法以支持自然排序,以及在List集合中使用Comparator进行定制排序,特别是针对存储了Map对象的List集合,根据Map中的特定值进行排序的方法。
9万+

被折叠的 条评论
为什么被折叠?



