Java While?

1 Antwort

Ein einfaches Anschauungsbeispiel:

int counter = 0;

while (counter < 100) {
  ++counter;

  if (counter % 2 == 0) {
    System.out.println(counter + " is even.");
    continue;
  }
  
  System.out.println(counter + " is odd.");
}

Es wird eine Zählervariable angelegt, die durch die Schleife schrittweise bis 100 (inklusiv) zählt. Bei jedem Schritt wird geprüft, ob eine Division durch 2 einen Rest von 0 ergibt, was bedeuten würde, dass die Zahl gerade ist. In jedem Fall erfolgt eine entsprechende Ausgabe.

Damit aber bei geraden Zahlen nicht beide Ausgaben getätigt werden, kommt das Schlüsselwort continue zum Einsatz. Dieser Befehl bewirkt, dass der Programmfluss sofort wieder zum Schleifenkopf springt und die nächste Runde startet (sofern die Bedingung erfüllt werden kann).

Für deinen Fall kannst du ebenfalls auf continue zurückgreifen, sollte die erwartete Eingabe getätigt werden. Nur die Schleifenbedingung wäre anders. Der Ausdruck müsste immer wahr sein, denn es gibt ja keine feste Vorgabe, wie oft der Rechner verwendet können soll.

Zusätzlich wäre noch eine Ausstiegsmöglichkeit nützlich, andernfalls läuft die Schleife unendlich oft. Mit dem break-Befehl kann der Programmfluss aus einer Schleife ausbrechen.

Beispiel:

int counter = 0;

while (counter < 100) {
  ++counter;

  if (counter == 50) {
    break;
  }
}

Diese Schleife läuft nur solange, bis die Zählervariable den Wert 50 beinhaltet.

urMomisNice  19.10.2022, 10:46

UnitTests?! Bitte Code-Qualität gewährleisten.

0