Java获取两个日期之间的天数[重复]

Posted

技术标签:

【中文标题】Java获取两个日期之间的天数[重复]【英文标题】:Java getting number of days between two dates [duplicate] 【发布时间】:2021-03-02 11:46:35 【问题描述】:

我正在尝试计算两个日期之间的天数。 尽管我发现了很多类似的问题,但我就是想不出一个解决方案。

Date lastpickup = (Date) section_userdata.get("lastpickup");
Date today = new Date();
    
Instant instant_lastpickup = lastpickup.toInstant().truncatedTo(ChronoUnit.DAYS);
Instant instant_today = today.toInstant().truncatedTo(ChronoUnit.DAYS);

这是我目前的代码。 日期是从配置中读取的,应与实际日期进行比较。 使用我拥有的代码,我可以确定日期是否相同,但我想知道这两者之间的天数(理想情况下是整数)。

我想查看日历天数,而不是 24 小时节奏。

【问题讨论】:

嗯,结果将取决于时区。您要在哪个时区进行操作? 仅供参考,切勿使用java.util.Datejava.sql.Date。两者都是遗留类,多年前被 JSR 310 中定义的现代 java.time 类所取代。分别被 java.time.Instantjava.time.LocalDate 取代。 【参考方案1】:

嗯,比我想象的要容易得多。

这是我的解决方案

long daysCount = ChronoUnit.DAYS.between(instant_lastpickup, instant_today);

【讨论】:

您的代码忽略了时区的关键问题。

以上是关于Java获取两个日期之间的天数[重复]的主要内容,如果未能解决你的问题,请参考以下文章

PHP:以YYYY-MM-DD格式获取两个日期之间的天数[重复]

如何在swift3中获取两个日期之间的日历日[重复]

如何找到两个日期之间的天数差异[重复]

收集两个日期之间的天数[重复]

计算两个日期之间的天数[重复]

两个日期之间的天数 [重复]