Maison > Java > javaDidacticiel > Comment comparer les dates en Java hors heure ?

Comment comparer les dates en Java hors heure ?

Linda Hamilton
Libérer: 2024-11-09 08:16:02
original
610 Les gens l'ont consulté

How to Compare Dates in Java Excluding Time?

Comparaison de dates hors heure : une exploration utilisant Joda Time

En Java, l'objet java.util.Date représente à la fois la date et l'heure. Lors de la comparaison de dates, il est souvent souhaitable d'ignorer la partie heure et de se concentrer uniquement sur la date elle-même.

Joda Time : une solution simplifiée

Joda Time, une bibliothèque renommée pour les calculs temporels, offre une solution élégante. Il fournit la méthode toLocalDate(), qui extrait les informations de date d'un objet DateTime, en ignorant les attributs d'heure.

DateTime first = ...;
DateTime second = ...;

LocalDate firstDate = first.toLocalDate();
LocalDate secondDate = second.toLocalDate();

return firstDate.compareTo(secondDate);
Copier après la connexion

Vous pouvez également utiliser la méthode DateTimeComparator.getDateOnlyInstance(), qui simplifie le processus de comparaison :

return DateTimeComparator.getDateOnlyInstance().compare(first, second);
Copier après la connexion

API intégrée Alternative

Si Joda Time n'est pas une option, vous pouvez ajuster manuellement une instance de calendrier pour représenter uniquement la date, en éliminant les champs heure, minute, seconde et milliseconde.

Calendar firstCalendar = Calendar.getInstance();
Calendar secondCalendar = Calendar.getInstance();

firstCalendar.set(Calendar.HOUR_OF_DAY, 0);
firstCalendar.set(Calendar.MINUTE, 0);
firstCalendar.set(Calendar.SECOND, 0);
firstCalendar.set(Calendar.MILLISECOND, 0);

secondCalendar.set(Calendar.HOUR_OF_DAY, 0);
secondCalendar.set(Calendar.MINUTE, 0);
secondCalendar.set(Calendar.SECOND, 0);
secondCalendar.set(Calendar.MILLISECOND, 0);

return firstCalendar.compareTo(secondCalendar);
Copier après la connexion

Notez cependant que cette méthode est plus lourde et moins robuste que l'approche Joda Time.

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal