在Java 中計算日期/時間差
在處理時態資料時,有必要計算兩個給定日期或時間之間的時差次。在 Java 中,有多種方法可以有效地完成此任務。
一種常見的方法是將日期或時間轉換為自紀元以來的毫秒數,然後將其中一個減去另一個。在提供的範例程式碼中使用了此技術,其中使用 Date 類別的 getTime() 方法計算毫秒。但是,提供的程式碼會產生不準確的結果,特別是在秒計算方面。
要修正此問題,可以使用 java.util.concurrent.TimeUnit 類別。此類的 toSeconds() 和 toMinutes() 方法可分別用於取得以秒和分鐘為單位的差異。以下程式碼片段示範了這種方法:
long diff = d2.getTime() - d1.getTime();//as given long seconds = TimeUnit.MILLISECONDS.toSeconds(diff); long minutes = TimeUnit.MILLISECONDS.toMinutes(diff); System.out.println("Time in seconds: " + seconds + " seconds."); System.out.println("Time in minutes: " + minutes + " minutes.");
透過利用 TimeUnit 類,程式碼現在將產生正確的結果:
Time in seconds: 45 seconds. Time in minutes: 3 minutes.
以上是如何在Java中準確計算日期/時間差異?的詳細內容。更多資訊請關注PHP中文網其他相關文章!