Publié le 13/09/2010
Auteur Axel
Réseaux sociaux
0 partages
0 tweets
0 plus
0 commentaires

Comparer 2 dates avec l'objet Calendar

Travailler avec les dates est bien souvent un casse-tete, rien que de déterminer si une Date A est avant ou après une Date B est déjà un défi.

Savoir si une date est avant ou après

Pour savoir si une date est supérieur à une autre, on peut comparer soi-męme le nombre de millisecondes de chaque date. Ou alors utiliser les fonctions after et before de l'objet Calendar.
import java.text.SimpleDateFormat;
import java.util.Calendar;
 
/**
 * Comparer des date avec l'objet Calendar
 * @author Axel
 * http://www.fobec.com/java/997/comparer-dates-avec-objet-calendar.html
 */
public class DateCompare {
    public static void main(String[] args) {
        SimpleDateFormat df=new SimpleDateFormat("dd/MM/yyyy");
        //Par défaut, date d'aujourd'hui
        Calendar calAujourdhui = Calendar.getInstance();
        //Fixe à la date d'hier
        Calendar calYesterday = Calendar.getInstance();
        calYesterday.add(Calendar.DAY_OF_MONTH, -1);
 
        if (calYesterday.equals(calAujourdhui)) {
            System.out.println("Les dates sont identiques");
        } else if (calYesterday.after(calAujourdhui)) {
           System.out.println(df.format(calYesterday.getTime())+" est supérieur à "+df.format(calAujourdhui.getTime()));
        } else if (calYesterday.before(calAujourdhui)) {
           System.out.println(df.format(calYesterday.getTime())+" est inférieur à "+df.format(calAujourdhui.getTime()));
        }
    }
}

Ces fonctions sont pratiques si l'on veut trier une liste de date. Par exemple, dans l’algorithme Quicksort, les éléments sont triés grâce à une comparaison ayant 3 résultats: égal, supérieur et inférieur. L'objet JAVA Calendar dispose justement de ces 3 comparaisons pour déterminer si une date est égale à une autre ou si la date est avant ou après une autre date.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
java - sources
Mise a jour
13/09/2010
Visualisation
vu 6083 fois
Public
Internaute
Auteur de la publication
Axel
Membre junior
Auteur de 51 articles
|BIO_PSEUDO|
Commentaires récents

Publié par Benjamin dans tuto

Fonctionne nickel, merci pour le script :)

Publié par Christof dans CMS

Je pense qu'il y a un problème au niveau de l'affectation du longint "Color" dans la
variable de type byte "r". A mon avis, cela risque de provoquer une erreur de
vé...

Publié par web agency cms Typo3 dans tuto

De nombreux articles sur le web parlent des CMS (Content Management System) et tentent de lister les meilleurs d'entres-eux.
Mais très souvent, sauf quelques rares libres blancs, ces article...

Publié par eldiablo dans java

Malheureusement, ce code n'est pas correct.
Cette classe accepte des dates comme : "31/00/2011"

Publié par Oscar dans java

Je vous remercie pour ce tuto il ma permis non seulement de gerer les couleurs dans les cellules mais aussi de positionner son contenu texte.