Wie break aus einer Schleife, nachdem die Bedingung erfüllt ist

Hallo, ich habe versucht, für die letzten Stunden brechen aus dieser Schleife und fortsetzen, denn bereits erfüllt meine Bedingung einmal. Meine Anwendung ziemlich viel liest, in einer serie von Linien und analysiert Sie und druckt anschließend die variable angegeben. Ein Beispiel, wie die Zeilen Aussehen (das . sind nicht im Lieferumfang enthalten):

  • 10 c = 9+3
  • 20 a = c+1
  • 30 print c
  • 40 goto 20
  • 50 Ende

Er macht alles richtig, wenn er bis Zeile 40 geht zu Zeile 20 wie erwartet, aber ich will es zu gehen, um die Linie 50, da ging schon zur Linie 40 mal. Hier ist mein code für diesen Artikel:

while(booleanValue)
{
    if(aString.substring(0, 4).equals("goto"))
    {
        int chosenLine = Integer.parseInt(b.substring(5));
        if(inTheVector.contains(chosenLine))
        {
            analizeCommands(inTheVector.indexOf(chosenLine));
            i++;
        }
        else
        {
            System.ou.println("Line Was Not Found");
            i++;
        }
    }

    else if(aString.substring(0, 3).equals("end"))
        {
            System.out.println("Application Ended");
            booleanValue = false;
        }
}
Kleine Verbesserung: Sie kann ersetzen aString.substring(0, 4).equals("goto") mit aString.startsWith("goto"). Es ist lesbarer und sicherer für die Zeichenfolge kürzer als 4 Zeichen.
Sie benötigen einen Befehl, um zu sagen if <condition> statement und bewerten es als gut.
Vielleicht ist das 'continue' Schlüsselwort funktionieren würde?
Ich bemerkte beim formatieren des Codes, dass Ihnen eine } fehlt für die erste if
Sie haben eine seltsame Sortierung der if-else-if-else block. else if sollte vor der else.

InformationsquelleAutor user2252310 | 2013-04-29

Schreibe einen Kommentar