Java での日付/時刻の差の計算
時間データを扱う場合、指定された 2 つの日付間の時差を計算する必要があります。回。 Java では、このタスクを効果的に実行する方法がいくつかあります。
一般的なアプローチの 1 つは、日付または時刻をエポックからのミリ秒に変換し、一方から他方を減算することです。この手法は、提供されているコード例で使用されており、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 中国語 Web サイトの他の関連記事を参照してください。