java中Comparator的用法
来源:互联网 发布:基金怎么玩 知乎 编辑:程序博客网 时间:2024/05/17 06:29
在java中,如果要对集合对象或数组对象进行排序,需要实现Comparator接口以达到我们想要的目标。
接下来我们模拟下在集合对象中对日期属性进行排序
一、实体类Step
package com.ljq.entity;/** * 运号单流程 * * @author Administrator * */public class Step{ /** 处理时间 */ private String acceptTime = ""; /** 快件所在地点 */ private String acceptAddress = ""; public Step() { super(); } public Step(String acceptTime, String acceptAddress) { super(); this.acceptTime = acceptTime; this.acceptAddress = acceptAddress; } public String getAcceptTime() { return acceptTime; } public void setAcceptTime(String acceptTime) { this.acceptTime = acceptTime; } public String getAcceptAddress() { return acceptAddress; } public void setAcceptAddress(String acceptAddress) { this.acceptAddress = acceptAddress; }}
二、实现Comparator接口
package com.ljq.entity;import java.util.Comparator;import java.util.Date;import com.ljq.util.UtilTool;/** * 对Step类进行排序 * * @author Administrator * */public class StepComparator implements Comparator<Step>{ /** * 如果o1小于o2,返回一个负数;如果o1大于o2,返回一个正数;如果他们相等,则返回0; */ @Override public int compare(Step o1, Step o2) { Date acceptTime1=UtilTool.strToDate(o1.getAcceptTime(), null); Date acceptTime2=UtilTool.strToDate(o2.getAcceptTime(), null); //对日期字段进行升序,如果欲降序可采用before方法 if(acceptTime1.after(acceptTime2)) return 1; return -1; }}
三、测试
package junit;import java.util.Collection;import java.util.Collections;import java.util.List;import org.junit.Test;public class StepComparatorTest { @Test public void sort() throws Exception{ List<Step> steps=new ArrayList<Step>; //对集合对象进行排序 StepComparator comparator=new StepComparator(); Collections.sort(steps, comparator); if(steps!=null&&steps.size()>0){ for(Step step:steps){ System.out.println(step.getAcceptAddress()); System.out.println(step.getAcceptTime()); } } }}
0 0
- java中Comparator的用法
- java中Comparator的用法
- java中Comparator的用法
- java中Comparator的用法
- java中Comparator的用法
- java中Comparator的用法
- java中Comparator的用法
- java中Comparator的用法
- java中Comparator的用法
- Java中Comparator的用法
- Java中Comparator的用法
- java中comparator用法
- java中comparator用法
- java中Comparator接口的用法
- Java中Comparator接口的用法
- java中Comparator的用法(转载)
- java中Comparator接口的用法
- Java中Comparable和Comparator的用法
- Eclipse搭建Struts2环境
- 竞品分析报告的几个错误
- Java中HashMap遍历的两种方式
- printf记录程序日志
- 程序设计基石与实践之应用多态性的工资发放系统
- java中Comparator的用法
- 鸭子-策略模式(Strategy)
- redhat7 禁用ip6
- 块设备驱动程序3
- T4模板基础
- 为什么做竞品分析,竞品分析怎么做?
- 1004. Counting Leaves (30)
- LEETCODE: Balanced Binary Tree
- Add Two Numbers leetcode