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

Publié par space dans java

peut on avoir un meme code pour linux

Publié par Alpcom dans java

Salut , juste signaler une petite faute de frappe dans mouseDragged
ce n'est pas int y = p.y - newPos.x;
int y = p.y - newPos.y; !! des comportements curieux apparaissaient sinon merci beaucoup...

Publié par farid dans CMS

formation delphi 7

Publié par arthur dans java

essaye avec une while, cela devrais marcher. mais après je ne sais pas comment paramétrer. c'est toi qui voit

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...