首页 > 技术文章 > 计算两个日期之间间隔的天数

zou-rong 2019-01-02 19:58 原文

摘自https://www.jb51.net/article/144313.htm

侵删

Java计算两个日期时间之间的天数最简方法

 更新时间:2018年07月24日 08:33:36   作者:李学凯    我要评论

这篇文章给大家分享了Java计算两个日期时间之间的天数最简单的实现方法,有兴趣的朋友可以参考学习下。

有一种low的方式,就是你把两个时间都换成秒,然后除以一天的秒数,然后向上取整,就是算的天数。但是这么实现太low啦。

jdk有高级的API,我们为啥还要自己去实现呢,问题就是我们不知道。

所以,我在这写个笔记,记录下,jdk 1.8 是怎么做的。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/**
 * 计算两个时间点之间的天数
 */
private static void getBetweenDay() {
  LocalDate start = LocalDate.of(2018, 2, 12);
  LocalDate now = LocalDate.now();
  System.out.println("两个时间之间的天数是:" + TimesUtils.getBetweenDay(start, now) + " 天。");
}
 
/**
 * 计算两个时间点之间的天数
 */
public static long getBetweenDay(LocalDate start, LocalDate end) {
  return end.toEpochDay() - start.toEpochDay();
}

后面的那个方法就是重点啦。

LocalDate.toEpochDay()。

将日期转换成Epoch 天,Epoch就是从1970-01-01(ISO)。开始的天数,和那个时间戳是一个道理,时间戳是秒数。

文章是简单了点,也许太简单了点。就当做个笔记吧。

感谢大家对脚本之家的支持。

推荐阅读