Probleme de switch
omar_k
Messages postés
57
Statut
Membre
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
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.
3 réponses
-
Salut,
Tu es sur que input.next(); retourne une chaine de caractère ? -
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 :
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-
-
"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
-