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

avec Java Discussion :

Utilisation de switch/case


Sujet :

avec Java

  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2013
    Messages : 1
    Par défaut Utilisation de switch/case
    Bonjour,

    Je suis débutant en Java et j'ai commencé à rédiger mon premier programme dont l'utilité est de calculer le nombre de points gagnés au tennis de table, après une rencontre, avec les paramètres suivants : Nombre de points du joueur A, du joueur B, match perdu ou gagné.

    Seulement, afin d'éviter les if/else à répétition, j'ai eu l'idée d'utiliser un switch case. Mon but est d'effecteur telle ou telle action lorsque l'écart de points est entre 0 et 20, 20et 50 etc.

    En gros, j'aimerais arriver à un truc dans ce genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    switch(nbre)
    {
    case <10:
      System.out.println("Le nombre est inférieur à 10");
      break;
    }
    Bien entendu, ce n'est pas le code du dessus qui m'interesse mais plutôt la partie "case <10", car elle ne marche pas. Avez-vous une idée ?

    On m'a dit que le case ne prend en compte que les valeurs constante. Ca veut dire que je suis obligé de passer par une série interminable de if/else ? Ou il y a une autre méthode ?

    Merci d'avance pour votre aide.

  2. #2
    Membre émérite
    Avatar de michel.di
    Homme Profil pro
    Freelance
    Inscrit en
    Juin 2009
    Messages
    782
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 782
    Par défaut
    Salut,
    Généralement, un switch se fait sur une énumération. Tu ne peux le faire que sur des constantes.

    Dans ton cas, tu vas devoir passer par des if...

  3. #3
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 577
    Par défaut
    Je ne vois pas en quoi une série de case/break serait moins interminable que son équivalent en if/else.
    Elle est juste un peu plus claire et compacte... Ce qui commence à se discuter si on veut mettre autre chose qu'une égalité stricte dans le case.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre expérimenté Avatar de Doopeijii
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2012
    Messages
    215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 215
    Par défaut
    De toute manière, le switch/case n'est pas applicable pour ton cas. Regarde donc comment on peut l'utiliser ici.
    Tu peux juste vérifier l'exactitude d'une valeur (si nbre vaut 10, 5, 123546, etc) mais pas un ordre de grandeur (supérieur, inférieur, etc) ou en tous cas même si tu trouves une solution elle sera beaucoup plus lourde qu'un if/else.

  5. #5
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 962
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 962
    Par défaut
    Joa,
    Citation Envoyé par leo0617 Voir le message
    On m'a dit que le case ne prend en compte que les valeurs constante. Ca veut dire que je suis obligé de passer par une série interminable de if/else ? Ou il y a une autre méthode ?
    Pour apprendre un langage, il faut commencer par les bases.

    Les livres/totos/cours ne manquent pas.

    Certains diront qu'on peut très bien se lancer directement, mais personnellement, j'affirme que passer par cet apprentissage se révèle toujours bénéfique à terme (ça évite par exemple de poser des questions sur ces mêmes bases ...).

Discussions similaires

  1. Réponses: 165
    Dernier message: 03/09/2009, 15h35
  2. Utilisation du switch/case avec un StreamReader
    Par hellalaboy dans le forum C#
    Réponses: 9
    Dernier message: 27/08/2009, 15h27
  3. Utilisation switch case
    Par sebounty dans le forum Débuter
    Réponses: 12
    Dernier message: 06/06/2007, 11h05
  4. Utilisation des cases à cocher et "switch case"
    Par jarod71 dans le forum Langage
    Réponses: 4
    Dernier message: 21/01/2007, 14h37
  5. Réponses: 14
    Dernier message: 26/09/2006, 15h18

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