IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Affichage des résultats du sondage: laquelle vous utilisé souvant ?

Votants
5. Vous ne pouvez pas participer à ce sondage.
  • Date

    0 0%
  • Calendar

    0 0%
  • GregorianCalendar

    5 100,00%
Collection et Stream Java Discussion :

les classes Date, Calendar, GregorianCalendar


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de hb2ee
    Inscrit en
    Mars 2009
    Messages
    157
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 157
    Par défaut les classes Date, Calendar, GregorianCalendar
    salut cher amis,

    je voulus signalé un problème avec les classes Date, Calendar : je vois qu'ils ne sont pas praticable du tous, dans le cas ou nous meme on fixe les parametre année, mois, jour...la résultat obtenu est totalement différent de ce qui a été fixer au_ début. sauf pour le GregorianCalendar on peut rémedier a ce problème en utilisant les entier prédefinie par la class :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    MoisLettre = GregorianCalendar.JANUARY;
    GregorianCalendar.FEBRUARY;
     GregorianCalendar.MARCH;
    GregorianCalendar.APRIL;
     GregorianCalendar.MAY;
     GregorianCalendar.JUNE;
     GregorianCalendar.JULY;
    GregorianCalendar.AUGUST;
    GregorianCalendar.SEPTEMBER;
    GregorianCalendar.OCTOBER;
    GregorianCalendar.NOVEMBER;
     GregorianCalendar.DECEMBER;
    merci de me donnez votre avis sur cette point et n'hesitez pas si vous avez des solutions.

    cdt

  2. #2
    Membre émérite Avatar de zorm
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    584
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 584
    Par défaut
    Bonjour,

    Effectivement, la gestion des dates est un peu particulière en java mais aller jusqu'à dire que les classes Date et Calendar ne sont pas praticables est légèrement exagéré à mon sens.
    Ce sont des classes qui sont quand même présentent depuis respectivement la JDK 1.0 et 1.1 et du coup elles sont toujours présentent (ce qui peut laisser penser qu'elles ont surement une utilité, non?).
    Maintenant, je sais pas exactement ce que tu cherches à faire et ce qui te pousse à lancer un sondage mais en tout cas, quelques articles dans la FAQ expliquent comment profiter de la gestion des dates.

  3. #3
    Membre confirmé Avatar de hb2ee
    Inscrit en
    Mars 2009
    Messages
    157
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 157
    Par défaut
    Citation Envoyé par zorm Voir le message
    Bonjour,

    Effectivement, la gestion des dates est un peu particulière en java mais aller jusqu'à dire que les classes Date et Calendar ne sont pas praticables est légèrement exagéré à mon sens.
    .
    exagéré..
    je ne suis pas la pour me montré que je suis un pro, mais pour te convaincre il suffit de consulter le doc de JDK 6 il t'indique que l'emploi de Date(int,int,int) est non praticable. ainsi si t'utilise netbeans 6 tu va rencontré des choses comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Date d = new Date(2009, 4, 3);//date barré, désolé je ne peut pas la répresenté
    Merci pour votre contribution

  4. #4
    Membre émérite Avatar de zorm
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    584
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 584
    Par défaut
    Effectivement, la classe Date contient une majorité de constructeurs et de méthodes dépréciée. Pour ton exemple, on t'indique même la démarche à suivre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     replaced by Calendar.set(year + 1900, month, date)  or GregorianCalendar(year + 1900, month, date).
    Mais ce n'est pas pour autant que la classe Date n'est pas utile, c'est juste qu'elle ne doit pas être utilisée comme toi tu le souhaiterais.
    Ce qu'il faut comprendre, c'est que le rôle de la classe util.Date est de stocker de l'information, il n'y a pas de traitement à proprement parlé dedans. les méthodes incluant du traitement sont du coup dépréciées car ça sera le rôle d'autres classes de les faire. La classe Date est donc vu comme un ValueObject (utilisé notamment par la librairie JDBC), elle permet de stocker de l'information mais aussi de s'identifier/comparer par rapport à d'autres classes de même type (est ce le même, est ce avant moi, ou après)

  5. #5
    Membre confirmé Avatar de hb2ee
    Inscrit en
    Mars 2009
    Messages
    157
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 157
    Par défaut
    après avoir etre sur le meme axe...


    oui, justement pour le stockage des champs Timestamp dans une base des données relationnelle elle est parfait, mais la problème ce pose, lorsque on veut récupéré ce champ et l'afficher.

    merci.

  6. #6
    Membre émérite Avatar de zorm
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    584
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 584
    Par défaut
    Citation Envoyé par hb2ee Voir le message
    mais la problème se pose, lorsque on veut récupérer ce champ et l'afficher.
    Peux tu donc être plus précis sur ce point, donner le cas qui te pose réellement un problème?

    La classe Date utilise le nombre de millisecondes passées par rapport à une date fixe (1er janvier 1970 à 00:00:00)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    //Construit par rapport à System.currentTimeMillis()
    Date date = new Date();
    System.out.println(date);
    Ceci retourne bien l'heure courante, sans problème d'affichage:
    Tue May 05 11:50:53 CEST 2009

Discussions similaires

  1. java parcourir les jours d'un Calendar,GregorianCalendar
    Par camer12 dans le forum Général Java
    Réponses: 4
    Dernier message: 21/06/2011, 17h02
  2. Conversion de classe Date vers classe Calendar
    Par Bateau_Ivre dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 21/07/2008, 11h46
  3. Réponses: 31
    Dernier message: 30/03/2006, 16h57
  4. delocaliser les classe
    Par otb82 dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 17/11/2003, 08h54
  5. Les classes amies en Delphi
    Par Bruno75 dans le forum Langage
    Réponses: 3
    Dernier message: 02/09/2003, 19h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo