Maison > Java > javaDidacticiel > Comment comparer des dates en Java sans composants temporels ?

Comment comparer des dates en Java sans composants temporels ?

Linda Hamilton
Libérer: 2024-11-24 17:14:12
original
918 Les gens l'ont consulté

How to Compare Dates in Java Without Time Components?

Comparaison des dates par date uniquement

Lorsque vous traitez des objets java.util.Date, vous pouvez rencontrer le besoin de comparer les dates sans prendre en compte les composante temporelle. Cette question recherche une méthode simple pour cette comparaison.

Solution avec Joda Time

L'approche préférée consiste à utiliser la bibliothèque Joda Time, qui fournit une solution élégante :

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

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

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

Vous pouvez également simplifier la comparaison en utilisant DateTimeComparator.getDateOnlyInstance() :

// TODO: Consider extracting this comparator to a field.
return DateTimeComparator.getDateOnlyInstance().compare(first, second);
Copier après la connexion

Approche Java native

Si l'utilisation de Joda Time n'est pas une option, vous pouvez recourir à l'API Java native, bien que Le processus est plus fastidieux :

  1. Créez des instances de calendrier pour les deux dates, en spécifiant les fuseau horaire.
  2. Définissez les champs heure, minute, seconde et milliseconde de chaque calendrier sur 0.
  3. Comparez les instances de calendrier résultantes.

Notez que cette approche nécessite une gestion minutieuse des fuseaux horaires puisque java.util.Date est toujours basé sur UTC.

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!

source:php.cn
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