有一种low的方式,就是你把两个时间都换成秒,然后除以一天的秒数,然后向上取整,就是算的天数。但是这么实现太low啦。
jdk有高级的API,我们为啥还要自己去实现呢,问题就是我们不知道。
所以,我在这写个笔记,记录下,jdk 1.8 是怎么做的。
/** * 计算两个时间点之间的天数 */ 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)。开始的天数,和那个时间戳是一个道理,时间戳是秒数。
文章是简单了点,也许太简单了点。就当做个笔记吧。
感谢大家对菜鸟教程(cainiaojc.com)的支持。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#cainiaojc.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。