在 Java 8 中计算日期之间的天数
在 Java 8 中,可以使用新的 Date API 来计算两个日期之间的天数。为了满足特定需求,本文提出了一种解决两个约束的方法:防止夏令时错误和接受作为 Date 对象的输入(不带时间信息)。
逻辑日历日
要计算逻辑日历天数,可以使用 DAYS. Between() 方法:
<code class="java">LocalDate dateBefore; LocalDate dateAfter; long daysBetween = DAYS.between(dateBefore, dateAfter);</code>
字面 24 小时天数(持续时间)
如果要求确定实际的 24 小时天(持续时间),则 Duration 类提供了合适的替代方案:
<code class="java">LocalDate today = LocalDate.now() LocalDate yesterday = today.minusDays(1); // Duration oneDay = Duration.between(today, yesterday); // throws an exception Duration.between(today.atStartOfDay(), yesterday.atStartOfDay()).toDays() // another option</code>
其他资源
用于进一步有关 Java SE 8 日期和时间 API 的详细信息,请参阅此综合指南:Java SE 8 日期和时间
以上是如何在 Java 8 中计算日期之间的天数,处理夏令时和日期对象?的详细内容。更多信息请关注PHP中文网其他相关文章!