ホームページ >Java >&#&チュートリアル >Java で日付/時刻の違いを正確に計算するにはどうすればよいですか?

Java で日付/時刻の違いを正確に計算するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-16 06:55:13944ブラウズ

How Can I Accurately Calculate Date/Time Differences in Java?

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。