[JAVA] Scanner Endlosschleife bis zur normalen Eingabe

Scanner Endlosschleife bis zur normalen Eingabe

Rückblick auf vorherige

Letztes Mal verwendete die Try-Catch-Syntax, um die Verarbeitung zu implementieren, wenn eine Ausnahmeklasse verwendet wurde.

Dieses Mal werde ich anhand der if-Anweisung, der try-catch-Syntax und der while-Anweisung unter Berücksichtigung aller Eingabemuster erklären, wie eine Schleife ausgeführt wird, wenn sich die Eingabe unterscheidet.

Lassen Sie uns ein Beispiel haben!

Beispiel

Konsole スクリーンショット 2020-05-30 17.43.38.png

Bitte beachten Sie zunächst, dass 0 keine positive Ganzzahl ist. (Inhalt von Schülern der Mittelstufe) Die Zeilenumbrüche für jede Schleife dienen der Lesbarkeit. Ich habe versucht, das Verfolgen der Bewegung des Codes durch Ausgabe der Verarbeitungsbenachrichtigungsanweisung zu vereinfachen.

** Achten Sie besonders auf `break;` und continue; `. ** ** ** Die ausführliche Erklärung des Kommentars finden Sie auf der Rückseite. Bitte lesen Sie sie vorerst, auch wenn Sie sie nicht verstehen (^^ ;;

Code スクリーンショット 2020-05-30 17.43.54.png

Konsolenbildschirm (wieder) スクリーンショット 2020-05-30 17.43.38.png

Gesamtstruktur

Programmablauf (denken Sie daran, dass es sich im Grunde genommen in einer Endlosschleife befindet)

  1. Weisen Sie zunächst die Standardeingabe der Variablen num vom Typ int zu.
  2. Wenn hier eine Ausnahme (Zeichen oder kleine Zahl) auftritt, wird der catch-Block verarbeitet und die while-Anweisung wechselt zur nächsten Schleife. -> Gehe zu 1
  3. Wenn keine Ausnahme auftritt (positive oder negative Ganzzahl, 0), wird num durch die if-Anweisung klassifiziert.
  4. Wenn num 0 oder eine negative Ganzzahl ist, geben Sie eine Nachricht aus und überspringen Sie die Verarbeitung des while-Blocks unter `continue;`. -> Gehe zu 1
  5. Wenn num eine positive Ganzzahl ist, wird sie im if-Block verarbeitet und wechselt zur nächsten Zeile im try-Block.
  6. Wenn die normale Verarbeitung abgeschlossen ist, müssen Sie aus der Endlosschleife entkommen. Verwenden Sie also `break;`, um die Endlosschleife zu verlassen.
  7. Schließen Sie die Scannerklasse.

Jetzt haben Sie ein Programm, das alle Fälle in Eingaben unterteilt und Sie auffordert, erneut einzugeben, bis die normale Verarbeitung ausgeführt wird.

Über Endlosschleife

Wenn während des Programms eine unerwartete Endlosschleife auftritt, wird diese mit `` `Strg + c``` beendet, also beeilen Sie sich nicht. Legen Sie für Mac-Benutzer die Exit-Taste im Bildschirm Einstellungen> Allgemein> Editor> Tasten fest. Unten die Standardeinstellung für die Endtaste スクリーンショット 2020-05-30 14.52.40.png

Recommended Posts

Scanner Endlosschleife bis zur normalen Eingabe
Java Scanner Loop Eingang
StackOverflowError (Endlosschleife)