做项目的时候需要根据时间做排序,之前排序老出问题,后来才知道把Date类型时间使用getTime()后用Collections.sort比较,直接比较createDate.getTime,排序不对,后来知道原来比较的时候把Long转换成了int值的时候容易溢出,造成排序不对,修改了一下,就好了
</pre><p><img src="" alt="" /></p><pre name="code" class="java">// 排序
if (allMails != null) {
Collections.sort(allMails, new Comparator<Mail>() {
public int compare(Mail o1, Mail o2) {
if (o2.createDate.getTime() > o1.createDate.getTime()) {
return 1;
} else if (o2.createDate.getTime() < o1.createDate.getTime()) {
return -1;
} else {
return 0;
}
}
});
}
其实比较时间的方法有很多种,用这种方法比较只是觉得比较简单。