Java比较计算日期,日期排序

一、比较一个日期和今天相差多少天

/**
 * 计算相差日期
 *
 * @param date 传入年月日
 * @return 天数 int
 */
public static int compareToday(String date) {
    long time = 0;
    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
    String today = df.format(new Date());  //今天
    try {
        time = df.parse(today).getTime() - df.parse(date).getTime();
    } catch (ParseException e) {
        e.printStackTrace();
    }
    int days = (int) (time / (1000 * 60 * 60 * 24));  //计算相差天数
    return days;
}
二、日期排序,List集合中有日期字段

/**
 * 日期排序
 * * @param   list 数据
 *
 * @return list
 */
public List<Book> sortDate(List<Book> list) {
    SimpleDateFormat format = new SimpleDateFormat("yyyy-M-dd");
    // 冒泡排序
    Book book = null;
    for (int i = list.size() - 1; i > 0; --i) {
        for (int j = 0; j < i; ++j) {

            try {
                //从大到小的排序
                if (format.parse(list.get(j + 1).getDate()).
                        after(format.parse(list.get(j).getDate()))) {
                    book = list.get(j);
                    list.set(j, list.get(j + 1));
                    list.set(j + 1, book);
                } else {
                    //从小到大的排序
                }
            } catch (ParseException e) {
                e.printStackTrace();
            }
        }
    }
    return list;
}
三、简单的方法

List<String> list =new ArrayList<String>();
list.add("2014-09-04 10:34:41");
list.add("2013-08-04 13:42:19");
list.add("2014-09-04 16:46:49");
list.add("2010-01-04 12:32:00");
list.add("2004-04-04 10:34:41");
list.add("2009-05-14  23:42:19");
list.add("2014-12-04  06:08:49");
list.add("2010-01-24  01:32:00");
Collections.sort(list);

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值