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 5759 fois
Public
Internaute
Auteur de la publication
Axel
Membre junior
Auteur de 51 articles
|BIO_PSEUDO|
Commentaires récents

Publié par nicolasterraes dans tuto

bonjour,
je ne comprends pas cette tape:

Les liens vers les feuilles de style et les fichier js sont declares dans les pages HTML. Modifiez les balises meta ainsi:
Feuille de style:
d...

Publié par BIBAK dans CMS

merci infiniment, ce sont des beau icons::: :)

Publié par fobec dans logiciel

MAJ: mise en cache du FAI et optimisation du script de Geolocalisation.

Publié par Coll dans java

Excuse moi, mais pourrais tu expliquer un peu plus precisement ce que tu fais lorsque tu convertis en gris je comprends l'idee mais pas ce que chaque action fait precisement et le cacth a la fin. Parc...

Publié par Axel dans java

merci Neoray pour ce commentaire
Effectivement, l'objet Calendar s'initialise sur l'heure GMT avec TimeZone.getTimeZone("UTC");
Calendar.getInstance(TimeZone.getTimeZone("...