Comparaison dates en java

Résolu
romain_natiez Messages postés 179 Statut Membre -  
 Manu -
Bonjour à tous!
Peut on en java écrire une expression du type

if (date1 > date2) {
traitement1
}

Si on ne peut pas faire comme ceci, avez vous une alternative ou un conseil ?

4 réponses

  1. javaman
     
    date1.before(date2)

    date1.after(date2)
    57
  2. sergecool
     
    slut à tous
    Je prose une solution qui ma fois est meilleur car elle est deja implementé par
    java, il suffit de l'utiliser!!

    la methode compareTo est une methode de presque tous les objets, donc je ne cree rien du tout

    if (date1.compareTo(date2 ) == -1) {
    // traitement du cas date1 < date2
    }

    if (date1.compareTo(date2 ) == 0) {
    // traitement du cas date1 = date2
    }

    if (date1.compareTo(date2 ) == 1) {
    // traitement du cas date1 > date2
    }

    explication
    la syntaxe date1.compareTo(date2 )

    est semblable à l'expression mathematique date1 - date2 qui returne
    ** un nombre negatil (-1 pour java) si date1<date2
    ** un nombre positif (1 pour java) si date1>date2
    ** zero si date1=date2

    enjoye your pleasure
    14
    1. Manu
       
      Salut,

      Les fonctions after et before sont des fonctions natives java, donc pas de pb pour les utiliser (c'est surtout bcp plus facile de lire le code). Ensuite je conseillerais plutôt de faire des comparaisons par rapport à 0, cf la javadoc :
      Returns:
      the value 0 if the argument Date is equal to this Date; a value less than 0 if this Date is before the Date argument; and a value greater than 0 if this Date is after the Date argument

      Ce qui nous donnerais :

      if (date1.compareTo(date2 ) < 0) {
      // traitement du cas date1 < date2
      }

      if (date1.compareTo(date2 ) == 0) {
      // traitement du cas date1 = date2
      }

      if (date1.compareTo(date2 ) > 0) {
      // traitement du cas date1 > date2
      }

      Bon courage
      0
  3. forfun
     
    c'est plutôt

    if (date1.after(date2))
    7
  4. romain_natiez Messages postés 179 Statut Membre 31
     
    Merci à touus, vous m'avez permis de résoudre mon problème !

    Merci encore et à bientôt !

    Romain_natiez
    3