Warum reagiert der Code nicht auf meine continue Anweißung?

... komplette Frage anzeigen

2 Antworten

Nein:

continue;

Überspringt den restlichen Code und geht zur nächsten Iteration über.

break;

hingegen verlässt sofort die Schleife.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von denido1984
09.12.2015, 23:47

Aha, also stimmt es nicht , dass bei continue Anweißungen zurück in den Schleifenkopf gesprungen wird

0
Kommentar von denido1984
09.12.2015, 23:52
  public static void main( String[] args )
{
int number = (int) (Math.random() * 5 + 1);
while ( true )
{
System.out.println( "Welche Zahl denke ich mir zwischen 1 und 5?" );
int guess = new java.util.Scanner( System.in ).nextInt();
if ( guess < 1 || guess > 5 )
{
System.out.println( "Nur Zahlen zwischen 1 und 5!" );
continue;
}
if ( number == guess )
{
System.out.println( "Super getippt!" );
break; // Ende der Schleife
}
else if ( number > guess )
System.out.println( "Nee, meine Zahl ist größer als deine!" );
else if ( number < guess )
System.out.println( "Nee, meine Zahl ist kleiner als deine!" );
}
}
Bei diesem Code z.B springt er durch continue auch an den Anfang. Oder bin ich jetzt bescheuert
0

Ok hab es jetzt verstanden. Im ersten Schritt wird geschaut ob 17%3 ungleich null ist. Ist dies der Fall wird die Zahl ausgegeben und zum Schleifenkopfzurück gekehrt.Dann wird die 9 genommen , sie ist durch 3 teilbar, also läuft die Schleife weiter. Da 9 ungleich 3 ist wird die Schleife nicht abgebrochen. Jetzt wird die 3 genommen und da sie auch durch drei teilbar ist wird der continue Befehl übergangen und gegeuckt ob 3 ==3 ist. Dies ist der wahr, also break.  

Mit der erklärung hätte ich überings mehr anfangen können-nur zur Info

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von KnusperPudding
10.12.2015, 08:23

Schön dass du es erkannt hast. 

Sowas hättest du relativ schnell raus bekommen wenn du deinen Code debugged hättest. Demnach musste ich davon ausgehen, dass du nicht wusstest was break und continue bewirkt.

Wenn es um Code-Fragen hier geht, geht es der Community darum dir dabei behilflich zu sein wie du deinen Fehler selbst lösen kannst, indem wir dir Tipps und Hilfestellungen geben. Anderenfalls wäre deine Frage als Arbeitsauftrag zu werten, was bei GuteFrage nicht zu lässig ist. - Dass du es dir sonst in zZkunft auch so leicht machst, und bei jedem Problem dass dir unterkommt und nicht auf den ersten Blick erkennbar ist, die Community um eine Lösung anzubetten.

Ich hoffe auf dein Verständnis. - Wir versuchen einen guten Rat und einen Ansatz zu geben.

1