計算Java 8 中日期之間的天數
為了精確計算兩個日期之間的天數,Java 8 Date API 提供了強大的解決方案。在不依賴外部庫的情況下,可以透過以下注意事項來解決該問題:
防止夏令時錯誤:
使用LocalDate 對象,它表示沒有時間的日期,以避免夏令時波動。
輸入限制:
假設輸入參數是兩個表示不帶時間的日期的 Date 實例。
邏輯日與文字天數:
邏輯天數(日曆天):
要計算日期之間的邏輯天數,請使用DAYS. Between() 方法來自java.time.temporal.ChronoUnit:
<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 exception Duration.between(today.atStartOfDay(), yesterday.atStartOfDay()).toDays() // alternative option</code>
其他資源:
有關更多詳細信息,請參閱Java SE 8 日期與時間文件:https ://docs.oracle.com/javase/8/docs/api/java/time/package-summary.html
以上是如何計算 Java 8 中日期之間的天數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!