Bonjour,
Si vous êtes pressés, je vais résumer mon topic à cette question:
Comment faire pour qu'à chaque nouvelle boucle, le programme crée une nouvelle variable scanner sc(n+1) que l'utilisateur pourra remplir à nouveau?
Maintenant en version longue:
Je fais du java depuis 1 mois et donc pour m'entrainer je souhaite créer un programme simple qui permet une sélection de nom de personnage semblable à celle des rpgs:
-On demande au joueur de choisir un nom
-S'il confirme, on lui affiche "votre personnage s'appelle x"
-S'il ne confirme pas on lui redemande un nom et ainsi de suite jusqu'à ce qu'il confirme
Je suis parti sur ça:
String IG; //IG comme in game name
System.out.println("Choisissez votre nom");
Scanner scIG = new Scanner(System.in);
IG=scIG.nextLine();
System.out.println("Voulez vous vous appeler "+ IG+"? Ecrire oui ou non.");
String sure,oui,non;
oui="oui";
non="non";
Scanner scSure = new Scanner(System.in);
sure=scSure.nextLine();
if (sure.equals(oui))
{
System.out.println("Votre personnage s'appelle désormais " +IG+"!");
}
else
do{
System.out.println("Choisissez votre nom");
Scanner scIG2 = new Scanner(System.in);
IG=scIG2.nextLine();
System.out.println("Voulez vous vous appeler "+ IG+"? Ecrire oui ou non.");
Scanner scSure2 = new Scanner(System.in);
sure=scSure.nextLine();
}
while(sure.compareTo(oui) == 1);
Le problème de mon programme est qu'il ne permet de redemander le nom qu'une seule fois, parce que la boucle me permet créer qu'1 seule nouvelle variables scIG2 écrire à la main. Donc j'aimerais savoir s'il y a moyen qu'à chaque nouvelle boucle de créer une variable scIG(n+1) pour pouvoir exécuter la boucle autant de fois que je veux. Je pourrais peut-être utiliser la boucle for, mais je ne veux pas d'incrémentation de la variable, juste a création d'une nouvelle à chaque boucle.
Merci de vos réponses