Maison >Java >javaDidacticiel >Comment puis-je calculer efficacement les différences de temps en Java ?

Comment puis-je calculer efficacement les différences de temps en Java ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-29 11:42:15864parcourir

How Can I Efficiently Calculate Time Differences in Java?

Calcul des différences de temps en Java

La soustraction de périodes de temps est une opération courante en programmation. En Java, il existe deux approches principales pour calculer les différences horaires : les classes traditionnelles Date et Calendrier et les nouvelles classes Instant et Durée introduites dans Java 8.

Approche traditionnelle avec date et calendrier

Les classes Date et Calendar ont été utilisées historiquement pour les calculs de temps en Java. Voici un exemple :

    SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
    Calendar start = Calendar.getInstance();
    start.setTime(sdf.parse("16:00:00"));
    Calendar end = Calendar.getInstance();
    end.setTime(sdf.parse("19:00:00"));
    long timeDifferenceMillis = end.getTimeInMillis() - start.getTimeInMillis();
    System.out.println("Time difference in milliseconds: " + timeDifferenceMillis);

Instant et Duration dans Java 8

Java 8 a introduit les classes Instant et Duration pour une gestion du temps plus efficace et plus propre.

    Instant start = Instant.now();
    // Your code
    Instant end = Instant.now();
    Duration timeElapsed = Duration.between(start, end);
    System.out.println("Time taken: " + timeElapsed.toMillis() + " milliseconds");

Conclusion

Les deux méthodes peuvent être utilisées pour calculer les décalages horaires en Java. Cependant, les classes Instant et Duration, introduites dans Java 8, offrent une approche plus simplifiée et efficace par rapport aux classes Date et Calendar traditionnelles.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn