Verzweigungsanweisungen

Sie können Verzweigungsanweisungen break und continue in Aktionen hinzufügen.

IRL unterstützt zwei Verzweigungsanweisungen: break und continue.

Pause

Die Anweisung break beendet eine for- oder eine while-Schleife, wenn die Anweisung gefunden wird. In einer for-Schleife wird der Steuerungsablauf an die Anweisung übergeben, die dem übergeordneten for folgt, wie im Folgenden gezeigt:

then {
  int ?i = 1;
  int ?j = 1;
  for ( ?i = 1; ?i <= 3; ?i++ ) {
    System.out.println("\ni= " + ?i + ": ");
    for ( ?j = 1; ?j <= 3; ?j++ ) {
        System.out.println(" j = " + ?j) ;
        if ( ?i == ?j ) {
             break;
         }
     }
   }
 }

Die Anweisung break beendet nur die Schleife, in der sie vorkommt. Wenn zwei Schleifen verschachtelt sind, beendet eine Anweisung break in der inneren Schleife die innere Schleife, aber nicht die äußere Schleife. Im Folgenden sehen Sie die Ausgabe des vorherigen Beispiels:

i= 1:
 j = 1

i= 2:
 j = 1
 j = 2

i= 3:
 j = 1
 j = 2
 j = 3

Weiter

Sie verwenden die Anweisung continue, um die aktuelle Iteration einer for- oder while-Schleife zu überspringen. Anstatt die Schleife wie die break-Anweisung (Unterbrechung) zu beenden, überspringt die continue-Anweisung (Weiter) alle folgenden Anweisungen im Schleifenkörper und führt die nächste Iteration der Schleife aus. Die Anweisung continue wird im folgenden Beispiel veranschaulicht.

then {
   StringBuffer ?whitePaper = new StringBuffer(
                     "The Case for Business Users of Information Technology");
   int ?max = ?whitePaper.length();
   int ?numSs = 0;
   int ?i = 0;
   for (?i = 0; ?i < ?max; ?i++) {
      if (?whitePaper.charAt(?i) != 's'){
         continue;
        }
        ?numSs++;
        ?whitePaper.setCharAt(?i, 'S');
      }
   System.out.println("Found " + ?numSs + " s's in the string.\n");
   System.out.println(?whitePaper);
}

Hier ist die Ausgabe:

Found 6 s's in the string.
The CaSe for BuSineSS USerS of Information Technology

Das Beispiel arbeitet sich schrittweise durch einen Zeichenfolgepuffer und überprüft dabei jeden Buchstaben. Wenn das aktuelle Zeichen kein s ist, überspringt die Anweisung continue die restlichen Anweisungen in der Spalte und fährt mit der nächsten Iteration fort, um das nächste Zeichen zu testen. Wenn das Zeichen ein s ist, erhöht die Regel einen Zähler und konvertiert das s in einen Großbuchstaben.