Java中计算两个日期间的天数

简介:

jdk 8 以前

日期api是java.util.Date,要计算两个 Date 间的天数有如下几种方法:

  1. 通过两个日期间的毫秒数去除以每天的毫秒数,根据需要自行决定是否需要 + 1
        Date d1 = new Date(), d2 = new Date();
        int days = (int) ((d1.getTime() - d2.getTime()) / (24*3600*1000));
  1. 使用 Hutool工具包
        Date d1 = new Date(), d2 = new Date();
        int day2s = (int) DateUtil.betweenDay(d1, d2, false);
  1. 使用jodaTime工具包
Interval interval = new Interval(oldTime, new Instant());


jdk 8 以来

日期api变成了 java.time.LocalDate。除了你想把LocalDate转成Date然后像上面一样求解以外(当然不推荐了!),可以使用如下方法:

        LocalDate to = LocalDate.now();
        LocalDate from = to.withDayOfYear(1);
        int days = (int) ChronoUnit.DAYS.between(from, to);
目录
相关文章
|
3月前
|
SQL 存储 Java
java流式计算Stream
java流式计算Stream
21 0
|
3月前
|
Java
承压计算 Java
承压计算 Java
26 1
|
1月前
|
搜索推荐 Java 大数据
Java中的数据流处理与流式计算实现
Java中的数据流处理与流式计算实现
|
1月前
|
并行计算 Java 大数据
Java中的高效并行计算与多线程编程技术
Java中的高效并行计算与多线程编程技术
|
2月前
|
Java 测试技术 API
滚雪球学Java(52):一步一步教你使用Java Calendar类进行日期计算
【6月更文挑战第6天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
24 3
滚雪球学Java(52):一步一步教你使用Java Calendar类进行日期计算
|
2月前
|
Java API
探讨Java集合的组内平均值计算
探讨Java集合的组内平均值计算
16 1
|
1月前
|
并行计算 监控 Java
Java中的并行计算与任务分发策略
Java中的并行计算与任务分发策略
|
1月前
|
并行计算 Java 大数据
Java中的高效并行计算与多线程编程技术
Java中的高效并行计算与多线程编程技术
|
2月前
|
Java 容器
中缀表达式计算(java)
中缀表达式计算(java)
23 0
|
2月前
|
Java
java8日期计算(偏移N周,返回指定星期的日期)
java8日期计算(偏移N周,返回指定星期的日期)
19 0