Perl-Schleifen

Manchmal müssen wir möglicherweise denselben Codeblock mehrmals ausführen. Im Allgemeinen werden Anweisungen in der Reihenfolge ausgeführt: Die erste Anweisung in einer Funktion wird zuerst ausgeführt, gefolgt von der zweiten Anweisung und so weiter.

Programmiersprachen bieten verschiedene Kontrollstrukturen, die komplexere Ausführungspfade ermöglichen.

Schleifenanweisungen ermöglichen es uns, eine Anweisung oder eine Gruppe von Anweisungen mehrmals auszuführen. Unten sehen Sie ein Flussdiagramm von Schleifenanweisungen in den meisten Programmiersprachen:

循环结构

Beachten Sie, dass die Zahl 0, der String '0', "", die leere Liste () und undef sindfalse, während andere Wertetruesind. Vor true, bei Verwendung von!ornotgibt false zurück.

Die Sprache Perl bietet die folgenden Schleifentypen:

SchleifentypBeschreibung

while-Schleife

Wiederholt eine Anweisung oder eine Gruppe von Anweisungen, solange die angegebene Bedingung wahr ist. Sie prüft die Bedingung, bevor der Schleifenkörper ausgeführt wird.

until-Schleife

Wiederholt eine Anweisung oder eine Gruppe von Anweisungen, bis die angegebene Bedingung wahr ist. Sie prüft die Bedingung, bevor der Schleifenkörper ausgeführt wird.

for-Schleife

Führt eine Folge von Anweisungen mehrmals aus und vereinfacht den Code, der die Schleifenvariable verwaltet.

foreach-Schleife

Die foreach-Schleife wird verwendet, um über die Werte einer Listen- oder Sammlungsvariablen zu iterieren.

do...while-Schleife

Ähnlich der while-Anweisung, außer dass sie die Bedingung am Ende des Schleifenkörpers prüft.

Verschachtelte Schleifen

Sie können eine oder mehrere Schleifen in einer while-, for- oder do...while-Schleife verwenden.

Schleifensteuerungsanweisungen

Schleifensteuerungsanweisungen ändern die Ausführungsreihenfolge des Codes und ermöglichen es Ihnen, Sprünge im Code zu implementieren.

Perl bietet die folgenden Schleifensteuerungsanweisungen:

SteuerungsanweisungBeschreibung

next-Anweisung

Beendet die Ausführung der Anweisungen von der auf die next-Anweisung folgenden bis zum Marker für das Ende des Schleifenkörpers, überträgt die Ausführung auf den continue-Block und kehrt dann zum Anfang des Schleifenkörpers zurück, um die nächste Iteration zu beginnen.

last-Anweisung

Verlässt den Anweisungsblock der Schleife und beendet dadurch die Schleife.

continue-Anweisung

Der continue-Block wird normalerweise ausgeführt, bevor die Bedingung erneut ausgewertet wird.

redo-Anweisung

Die redo-Anweisung springt direkt zur ersten Zeile des Schleifenkörpers, um diese Iteration zu wiederholen; Anweisungen nach der redo-Anweisung werden nicht mehr ausgeführt, und der continue-Block wird ebenfalls nicht ausgeführt.

goto-Anweisung

Perl hat drei goto-Formen: goto LABEL, goto EXPR und goto &NAME.

Endlosschleifen

Wenn die Bedingung niemals falsch wird, wird die Schleife zu einer Endlosschleife.

Die for-Schleife kann traditionell verwendet werden, um eine Endlosschleife zu implementieren.

Da keiner der drei Ausdrücke, die eine Schleife bilden, erforderlich ist, können Sie eine Endlosschleife konstruieren, indem Sie einige Bedingungsausdrücke leer lassen.

Beispiele

#!/usr/bin/perl for( ; ; ) { printf "Die Schleife wird unendlich oft ausgeführt.\n"; }

Sie können Ctrl + C drücken, um die Schleife zu beenden.

Wenn der Bedingungsausdruck fehlt, wird angenommen, dass er wahr ist. Sie können auch einen Anfangswert und einen Inkrementausdruck festlegen, aber im Allgemeinen ziehen es Perl-Programmierer vor, das Konstrukt for(;;) zu verwenden, um eine Endlosschleife darzustellen.

Andere Erweiterungen