2017-04-12 4 views
0

Ich bin derzeit in einem Anfänger-Java-Kurs und wir haben eine Hausaufgabe, wo wir Schleifen verwenden müssen. Ich versuche eine do while-Schleife zu verwenden und frage einen Benutzer nach einer Frage. Wenn der Benutzer antwortet, fährt die Schleife fort und wenn sie Nein sagen, endet sie. Ich benutze BlueJ und ich bekomme immer einen Fehler, wenn ich meine Aussage für die Weile eintrage, dass meine Variable nicht gefunden wird. Bitte lassen Sie mich wissen, was ich tue, falsch - Ich danke Ihnen allen so viel :)Verwirrung mit Do While-Schleifen und Variablen

enter image description here

+0

teilen Code bitte? –

+1

Bitte setzen Sie den Code als * Text * in die Frage und nicht als Screenshot. –

Antwort

1

Ihre Variable choice sollte erklärt werden, bevor do {...} Block

1

Die Wahl Variable innerhalb des do Umfang definiert ist und ist daher nicht verfügbar, wenn Sie den while-Teil erreichen.

Scanner input = new Scanner(System.in); 
String choise; 
do 
{ 
    choise = ... 
} while(...) 
0

Die choice Variable ist außerhalb des Gültigkeitsbereichs der while-Schleife, damit Sie es nicht in Ihrem while Klausel verwenden können.

Was Sie tun können, ist eine boolesche Variable erstellen außen:

boolean isFinished = false; 
do { 
    ... 
    // change isFinished to true when "yes".equalsIgnoreCase(choice) 
    // or "y".equalsIgnoreCase(choice) :) 
} while (!isFinished)