Probleme de switch
omar_k
Messages postés
49
Date d'inscription
Statut
Membre
Dernière intervention
-
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
String reponse = input.next();
switch (reponse) {
case "z":
Actions_multi.avancer();
break;
case "q":
Actions_multi.pivotGauche();
break;
case "d":
Actions_multi.pivotDroit();
break;
case "s":
Actions_multi.tourner();
break;
default:
System.out.println("Vous n'avez pas saisi la bonne lettre");
break;
}
voila mon code apparemment il ya un problème avec "reponse" qui pourrai pas passer avec switch qui ne prend pas en charge les string.
pourriez vous m aider
merci d avance.
String reponse = input.next();
switch (reponse) {
case "z":
Actions_multi.avancer();
break;
case "q":
Actions_multi.pivotGauche();
break;
case "d":
Actions_multi.pivotDroit();
break;
case "s":
Actions_multi.tourner();
break;
default:
System.out.println("Vous n'avez pas saisi la bonne lettre");
break;
}
voila mon code apparemment il ya un problème avec "reponse" qui pourrai pas passer avec switch qui ne prend pas en charge les string.
pourriez vous m aider
merci d avance.
A voir également:
- Probleme de switch
- Android switch - Accueil - Android
- Smart switch pc - Télécharger - Divers Bureautique
- Switch off - Télécharger - Divers Utilitaires
- Logiciel switch - Télécharger - Conversion & Extraction
- Switch qwerty azerty - Guide
3 réponses
Quel est le type de "input" sur lequel tu fais un "next" ?
Le problème c'est que "clavier" n'est pas une classe standard, alors comment savoir ce qu'il y a dedans ?
Avec un Scanner par exemple, cela fonctionne sans problème :
Avec un Scanner par exemple, cela fonctionne sans problème :
Scanner input = new Scanner(System.in); while (true) { String reponse = input.next(); System.out.println(reponse.length()); switch (reponse) { case "z": //Actions_multi.avancer(); System.out.println("z"); break; case "q": //Actions_multi.pivotGauche(); System.out.println("q"); break; case "d": //Actions_multi.pivotDroit(); System.out.println("d"); break; case "s": //Actions_multi.tourner(); System.out.println("s"); break; default: System.out.println("Vous n'avez pas saisi la bonne lettre"); //break; } }
Le switch n'est autorisé sur les String qu'à partir de la version Java 7, et n'est possible que si les valeurs des "cases" sont connues à la compilation.
De plus Eclipse ne prend en charge cette fonctionnalité qu'à partir de la version Indigo 3.7.1, ta version Helios ne peux pas convenir !
Il faudrait que tu te mettes à jour avec les dernières versions : Java 7.10 et Eclipse 4.2.1La confiance n'exclut pas le contrôle
De plus Eclipse ne prend en charge cette fonctionnalité qu'à partir de la version Indigo 3.7.1, ta version Helios ne peux pas convenir !
Il faudrait que tu te mettes à jour avec les dernières versions : Java 7.10 et Eclipse 4.2.1La confiance n'exclut pas le contrôle
"Il faudrait que tu te mettes à jour avec les dernières versions : Java 7.10 et Eclipse 4.2.1"
→ Java SE Downloads
→ Eclipse Downloads
→ Java SE Downloads
→ Eclipse Downloads
A mon avis ton input.next() te renvoi un code de caractère plutot.
Essai avec un "reponse.toString()"