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

Langage Java Discussion :

getMonth deprecated : quelle bonne conduite?


Sujet :

Langage Java

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 90
    Points : 66
    Points
    66
    Par défaut getMonth deprecated : quelle bonne conduite?
    Bonjour,

    Comme getMonth est deprecated sur une date, je me demandais quelle était la bonne façon de récupérer le mois d'une date.

    Ainsi, d'après vous, est-ce que ce mécanisme est acceptable?

    Je précise que l'objet Criteres contient un attribut de format Date...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
    public String getMoisEnLettres(Criteres leCritere)
                {
     
                    GregorianCalendar calendar = new GregorianCalendar();
                    calendar.setTime(leCritere.getDate());
     
                    int mois = calendar.MONTH;
     
                    switch (mois)
                        {
                            case 1:
                                moisEnLettres="JANVIER";
                                break;
                            case 2:
                                moisEnLettres="FÉVRIER";
                                break;
                            case 3:
                                moisEnLettres="MARS";
                                break;    
                            case 4:
                                moisEnLettres="AVRIL";
                                break;    
                            case 5:
                                moisEnLettres="MAI";
                                break;
                            case 6:
                                moisEnLettres="JUIN";
                                break;
                            case 7:
                                moisEnLettres="JUILLET";
                                break;
                            case 8:
                                moisEnLettres="AOÛT";
                                break;
                            case 9:
                                moisEnLettres="SEPTEMBRE";
                                break;
                            case 10:
                                moisEnLettres="OCTOBRE";
                                break;
                            case 11:
                                moisEnLettres="NOVEMBRE";
                                break;
                            case 12:
                                moisEnLettres="DÉCEMBRE";
                                break;
     
                            default:
                                moisEnLettres = "---";
                                break;
     
                        }
                    return moisEnLettres;
                }
    D'avance, merci pour votre expérience.
    Wise_Sherkaan, un vieux tigre fatigué !!!!

  2. #2
    Membre éprouvé Avatar de Jidefix
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    742
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 742
    Points : 1 154
    Points
    1 154
    Par défaut
    Non ça ne peut pas marcher.
    Calendar.MONTH est une variable statique et n'a donc pas d'info sur une date précise.

    Il s'agit d'une constante qui sert justement à la méthode qui a remplacé getMonth et toutes les autres:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    int mois = calendar.get(Calendar.MONTH);
    Il existe aussi SECONDS, YEAR, etc...

    Soit dit en passant pour avoir le mois en texte, tu peux aussi passer par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SimpleDateFormat sdf = new SimpleDateFormat("MMMMM");
    return sdf.format(cal.getDate());
    Veuillez agréer nos sentiments les plus distingués. Soyez assurés de notre entière collaboration, bien à vous pour toujours et à jamais dans l'unique but de servir l'espérance de votre satisfaction, dis bonjour à ton père et à ta mère, bonne pétanque, mets ton écharpe fais froid dehors.

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 90
    Points : 66
    Points
    66
    Par défaut
    Mille mercis....

    C'est plutôt compliqué je trouve comme façon de gérer les dates....

    Ca m'allait bien, moi, le getMonth ;=)

    En tout cas merci pour l'explication et pardon aux modos pour l'oubli des balises #Code#.

    Bonne journée.
    Wise_Sherkaan

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 311
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 311
    Points : 9 524
    Points
    9 524
    Billets dans le blog
    1
    Par défaut
    D'abord, la méthode calendar.get(Calendar.MONTH) fonctionne parfaitement et récupère bien la partie mois de la date.

    Ceci dit, pour formater une date, la méthode SimpleDateFormat me semble bien meilleure, cette variante peut être intéressante lorsqu'on gère des installation multi-langues :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SimpleDateFormat sdf = new SimpleDateFormat("MMMM", Locale.FRENCH);
     System.out.println(sdf.format(cal.getTime()));
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Indice de bonne conduite
    Par DelphiManiac dans le forum Evolutions du club
    Réponses: 17
    Dernier message: 25/05/2012, 18h08
  2. [EJB] Quelles bonnes pratiques pour utiliser les transactions "en ligne"?
    Par kisitomomotene dans le forum Java EE
    Réponses: 1
    Dernier message: 12/12/2011, 20h22
  3. Developpez.com vous souhaite une bonne année 2011 ! Quelles bonnes résolutions avez-vous prises ?
    Par Katleen Erna dans le forum La taverne du Club : Humour et divers
    Réponses: 45
    Dernier message: 19/01/2011, 12h37
  4. [LinqToSQL] Quelle 'bonne' méthode pour 'update' ?
    Par nachtigal dans le forum Linq
    Réponses: 6
    Dernier message: 27/11/2009, 20h23
  5. Règle de bonne conduite en SWING ou Autres
    Par moritan dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 21/02/2006, 11h52

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