Maison >Java >javaDidacticiel >Comment puis-je calculer avec précision les différences de date/heure en Java ?
Calcul du décalage date/heure en Java
Lorsque vous travaillez avec des données temporelles, il devient nécessaire de calculer le décalage horaire entre deux dates données ou fois. En Java, il existe plusieurs façons d'accomplir cette tâche efficacement.
Une approche courante consiste à convertir les dates ou les heures en millisecondes depuis l'époque, puis à soustraire l'une de l'autre. Cette technique est utilisée dans l'exemple de code fourni, où les millisecondes sont calculées à l'aide de la méthode getTime() de la classe Date. Cependant, le code fourni produit des résultats inexacts, notamment dans le calcul des secondes.
Pour remédier à ce problème, la classe java.util.concurrent.TimeUnit peut être utilisée. Les méthodes toSeconds() et toMinutes() de cette classe peuvent être utilisées pour obtenir la différence en secondes et en minutes, respectivement. L'extrait de code suivant illustre cette approche :
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.");
En utilisant la classe TimeUnit, le code produira désormais les résultats corrects :
Time in seconds: 45 seconds. Time in minutes: 3 minutes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!