摘自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)。开始的天数,和那个时间戳是一个道理,时间戳是秒数。
文章是简单了点,也许太简单了点。就当做个笔记吧。
感谢大家对脚本之家的支持。