主要利用 Comparator这个接口来实现
int compare(Object o1, Object o2) 返回一个基本类型的整型,返回负数表示o1 小于o2,返回0 表示o1和o2相等,返回正数表示o1大于o2。
public class DateComparator implements Comparator<YVTalkRecordInformationBean> {
/**
* int compare(Object o1, Object o2) 返回一个基本类型的整型,返回负数表示o1 小于o2,返回0 表示o1和o2相等,返回正数表示o1大于o2。
*/
public int compare(YVTalkRecordInformationBean obj1, YVTalkRecordInformationBean obj2) {
Date begin = null, end = null;
try {
SimpleDateFormat sdf = new SimpleDateFormat(YVContactDBMenu.TALK_RECORDS_TABLE_DATE_FORMAT);
begin = sdf.parse(obj1.mTalkDate);
end = sdf.parse(obj2.mTalkDate);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//从大到小
//if (begin.after(end)) {
// return -1;
//} else {
// return 1;
//}
//从小到大
if (begin.after(end)) {
return 1;
} else {
return -1;
}
}
}
List<YVTalkRecordInformationBean> talkRecordInformationBeans = YVContactController_DBManager.getTalkRecords(mDbHelper);
Collections.sort(talkRecordInformationBeans, new DateComparator()); //排序。。。