Maison >Java >javaDidacticiel >Comment vérifier efficacement si une date se situe dans une plage en Java ?

Comment vérifier efficacement si une date se situe dans une plage en Java ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-30 00:16:09340parcourir

How to Efficiently Check if a Date Falls Within a Range in Java?

Détermination de l'inclusion d'une plage de dates à l'aide de Java

En Java, vérifier si une date se situe dans une plage définie nécessite un examen attentif. Bien que des méthodes telles que Date.before() et Date.after() fournissent une comparaison de date de base, elles peuvent ne pas offrir l'approche la plus simple.

Pour simplifier cette tâche, considérons le pseudocode suivant :

boolean isWithinRange(Date testDate) {
    return testDate >= startDate && testDate <= endDate;
}

Cependant, il est important de noter que cette approche peut ne pas tenir compte des considérations d'horodatage. Les dates extraites des bases de données contiennent souvent des horodatages.

Solution :

Pour gérer les horodatages et garantir une comparaison précise, le code suivant peut être utilisé :

boolean isWithinRange(Date testDate) {
    return !(testDate.before(startDate) || testDate.after(endDate));
}

Cette solution renvoie true si testDate se situe dans la plage spécifiée, y compris startDate et endDate. Il évite d'utiliser le conditionnel et l'opérateur (&&) pour garantir que l'égalité est correctement gérée.

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