Java正在获取两个日期之间的天数

Java正在获取两个日期之间的天数,java,date,compare,between,days,Java,Date,Compare,Between,Days,我正在计算两个日期之间的天数。 尽管我发现了许多类似的问题,但我还是无法找到解决办法 Date lastpickup = (Date) section_userdata.get("lastpickup"); Date today = new Date(); Instant instant_lastpickup = lastpickup.toInstant().truncatedTo(ChronoUnit.DAYS); Instant instant_today =

我正在计算两个日期之间的天数。 尽管我发现了许多类似的问题,但我还是无法找到解决办法

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小时的节奏。

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

这是我的解决办法

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

嗯,结果将取决于时区。您希望在哪个时区执行此操作?仅供参考,切勿使用
java.util.Date
java.sql.Date
。这两个类都是遗留类,多年前被JSR310中定义的现代java.time类所取代。分别被
java.time.Instant
java.time.LocalDate
替换。您的代码忽略了时区的关键问题。