List<Date>list=new ArrayList<Date>(); Date date1=new Date(2018,10,18,10,10,10); Date date2=new Date(2018,10,18,16,10,10); Date date3=new Date(2018,10,18,15,10,10); Date date4=new Date(2018,10,18,12,10,10); list.add(date1); list.add(date2); list.add(date3); list.add(date4); Collections.sort(list, new Comparator<Date>() { @Override public int compare(Date dt1, Date dt2) { if (dt1.getTime() > dt2.getTime()) { return -1; //关键在这里 其实规则还是 返回1就是大 ,大在右边,返回-1就是小,小在左边 //如果想升序 ,即从小到大排序,那么比较时 如果o1>o2,则o1返回1 返回1代表在2的右边 。这是默认的正序(意思是你大就是大,大返回1,往后站,就形成了左--->右,小---大) //============================ //如果想降序,即从大到小排序,那么比较时,如果o1>o2,那么要对比默认的规则 ,反过来 ,让大的一方去左边(意思是你大反而是小,返回-1,往前站,就形成了左--->右,大---小) } else if (dt1.getTime() < dt2.g
总结下java对象升序和降序
最新推荐文章于 2025-05-23 18:35:45 发布