您的位置:首页 > 编程语言 > Java开发

(JAVA)【实例】按照日期对List进行排序

2016-12-26 17:21 561 查看
首先,定义Comparator。

package com.msxf.vcard.utils;

import com.msxf.eyas.ccsv.dto.resp.VirtualCardStmtListQueryResponse;
import org.apache.commons.lang3.time.DateUtils;

import java.text.ParseException;
import java.util.Comparator;
import java.util.Date;

/**
* Created by yang.jin on 26/12/2016.
*/
public class StmtCalendarComparator implements Comparator{
@Override
public int compare(Object o1, Object o2) {
VirtualCardStmtListQueryResponse.S32050StmtDetails p1 = (VirtualCardStmtListQueryResponse.S32050StmtDetails) o1;
VirtualCardStmtListQueryResponse.S32050StmtDetails p2 = (VirtualCardStmtListQueryResponse.S32050StmtDetails) o1;
Date d1 = null;
Date d2 = null;
try {
if (p1.getTxn_date() == null || p2.getTxn_date() == null) {
return 0;
} else {
d1 = DateUtils.parseDate(p1.getTxn_date(), "yyyy-MM-dd");
d2 = DateUtils.parseDate(p2.getTxn_date(), "yyyy-MM-dd");
}
} catch (ParseException e) {
e.printStackTrace();
return 0;
}
int result =  d1.before(d2) ? 1 : -1;
return  result;
}

}


然后直接调用。

Collections.sort(stmtDetails,new StmtCalendarComparator());
vcardVO.setStmtDetails(stmtDetails);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java