java自定义类型 比较排序 Comparator接口
Posted javagogogo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java自定义类型 比较排序 Comparator接口相关的知识,希望对你有一定的参考价值。
String service_time = "6:00:00,7:00:00,8:00:00,9:00:00,10:00:00,11:00:00,12:00:00,13:00:00,14:00:00,15:00:00,16:00:00,17:00:00,18:00:00,19:00:00,20:00:00,21:00:00,22:00:00 "; List<String> list = StringUtil.stringToList(service_time, ","); StringTimeSort sort = new StringTimeSort(); Collections.sort(list,sort);
package com.enation.eop.sdk.utils; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Comparator; public class StringTimeSort implements Comparator{ @Override public int compare(Object arg0, Object arg1) { // TODO Auto-generated method stub String time0 = (String) arg0; String time1 = (String) arg1; SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss"); int t0 = 0; int t1 = 0; try { t0 = (int) sdf.parse(time0).getTime(); t1 = (int) sdf.parse(time1).getTime(); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } return t0 > t1 ? 1 : -1; //按照时间的由小到大排列 } }
通过实现Comparator接口 完成自定义排序
以上是关于java自定义类型 比较排序 Comparator接口的主要内容,如果未能解决你的问题,请参考以下文章
Collections.sort排序时,重写Comparator自定义排序报java.lang.AbstractMethodError异常,
Comparator与Comparable,自定义排序和类比较器,TreeSet对象排序
java.ArrayList集合调用并重写sort方法,使用时报错
Android - 是不是可以使用 Comparator.comparing 而不是 API < 24 上的自定义比较器对列表进行排序?