Partage
  • Partager sur Facebook
  • Partager sur Twitter

Pb classe Horloge

Sujet résolu
    18 mars 2012 à 1:12:48

    Bonsoir,
    Débutant en Java je ne comprends pas cette ligne de code dans la construction d'une horloge.
    Peux t-on me la traduire.
    Merci.

    /* Les secondes */
    <couleur nom="vertc">
    
    	               this.cal.get(Calendar.SECOND)< 10) 
    	               ? "0"+this.cal.get(Calendar.SECOND) 
    	               : this.cal.get(Calendar.SECOND)
    	            );
    
    </couleur>
    
    • Partager sur Facebook
    • Partager sur Twitter
      18 mars 2012 à 1:25:26

      Bonsoir,

      C'est un opérateur ternaire :
      (condition) ? /* si condition est vrai */ : /* si condition est fausse */;
      

      Ton code revient au même que :
      if (this.cal.get(Calendar.SECOND)< 10))
            "0"+this.cal.get(Calendar.SECOND);
      else
            this.cal.get(Calendar.SECOND);
      

      Mais, le contenu des conditions ne veulent rien dire tel quel. Je suppose que ton opérateur ternaire se trouve dans une instruction englobante.
      • Partager sur Facebook
      • Partager sur Twitter
      Si vous voulez me retrouver, rendez-vous sur ZesteDeSavoir.
        18 mars 2012 à 1:37:33

        <couleur nom="vertc">
        Voici le code entier.
        public void run() {
        	      while(true){
        	         this.cal = Calendar.getInstance();
        	         this.hour = 	/* Les heures */
        	            this.cal.get(Calendar.HOUR_OF_DAY) + " : " 
        	            + 
        	            ( 		/* Les minutes */
        	               this.cal.get(Calendar.MINUTE) < 20
        	               ? "0" + this.cal.get(Calendar.MINUTE)
        	               : this.cal.get(Calendar.MINUTE)
        	            )
        	            + " : " 
        	            +
        	            ( 		/* Les secondes */
        	               (this.cal.get(Calendar.SECOND)< 10) 
        	               ? "0"+this.cal.get(Calendar.SECOND) 
        	               : this.cal.get(Calendar.SECOND)
                   );
        </couleur>
        

        Merci pour l'operateur ternaire, ce que je ne comprends pas pourquoi < 20 pour les minutes et < 10 pour les secondes. "0" signifie quoi ?
        • Partager sur Facebook
        • Partager sur Twitter
          18 mars 2012 à 9:13:12

          Le message qui suit est une réponse automatique.
          Les réponses automatiques nous permettent d'éviter de répéter de nombreuses fois la même chose, et donc de gagner beaucoup de temps.
          Nous sommes néanmoins ouvert à toute question ou remarque, n'hésite pas à me contacter par messagerie privée à ce sujet.


          Merci d'utiliser les balises de code


          Bonjour,

          Les forums du Site du Zéro disposent d'une fonctionnalité permettant de colorer et mettre en forme les codes source.
          Tu as posté un code source sans utiliser cette fonctionnalité. Pourrais-tu éditer ton message afin d'ajouter ces balises ? Pour cela, sélectionne ton code à colorer et utilise le bouton Image utilisateur afin de choisir la coloration adaptée. Veille à bien choisir le langage de programmation afin que la coloration soit pertinente.

          De plus, veille à ce que ton code soit correctement indenté.

          Afin de ne pas surcharger le sujet, ne poste pas ton code coloré dans un nouveau message mais édite le premier (grâce au bouton Image utilisateur).

          Cela aura pour effet de "colorer" ton code et donc d'en faciliter grandement la lecture. Tu auras ainsi beaucoup plus de chances d'avoir des réponses.

          Voici un exemple de code non coloré (mauvais exemple) :
          int main(int argc, char *argv[])
          {
          long choixOperation;

          printf("Choisissez l'operation a effectuer");
          /* etc. */
          }

          Voici maintenant le même code coloré, utilisant la balise "code" (bon exemple) :
          int main(int argc, char *argv[])
          {
              long choixOperation;
          
              printf("Choisissez l'operation a effectuer");
              /* etc. */
          }
          


          C'est plus clair n'est-ce pas ? ;)

          Pour plus d'information à ce sujet, tu peux lire le tutoriel général sur le zCode.

          Merci de ta compréhension. :)
          • Partager sur Facebook
          • Partager sur Twitter
          Pwaite.net > Transfert de crédit téléphonique et monétisation de site web                                                                                        « I am awesome »

          Pb classe Horloge

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown