同じコードをプールする必要がある場合があります。通常、ステートメントは順番に実行されます。関数の最初のステートメントが最初に実行され、次には2番目のステートメントが実行されます。このように類推します。
プログラミング言語は、より複雑な実行パスに対して、さまざまな制御構造を提供します。
ループステートメントを使用すると、ステートメントまたはステートメントグループをループできます。下記のテーブル、ほとんどのプログラミング言語に適用するループステートメントのフローチャートです。
数値0、文字列 ‘0’、 “”、空の list () 、およびundefはfalseであり、他のすべての値はtrueであることに注意してください。trueの前に!またはnotを使用すれば、 falseを返します。
Perl言語には、下記のいくつかのループ型を提供します。
ループ型 | 説明 |
while ループ | 指定された条件がtrueの場合、ステートメントまたはステートメントグループがループします。本体をループする前に、先に条件をテストします。 |
until ループ | ステートメントまたはステートメントグループは、指定された条件がtrueになるまでループします。本体をループする前に、先に条件をテストします。 |
for ループ | 一連のステートメントを複数回に実行して、ループ変数のコードを簡略化して、管理します。 |
foreach ループ | foreachループは、リストまたは集合変数の値をループするために使用されます。 |
do…while ループ | 本体の最後のテスト条件をループする以外、whileステートメントに似てます。 |
ネストされたループ | while、for、またはdo..whileループ内で1つ以上のループを使用できます。 |
ループ制御文
ループ制御文は、コードの実行順序を変更します。これより、コードのジャンプを実現できます。
Perlには、下記のループ制御文が提供されます。
制御文 | 説明 |
next 文 | next文の次の制御文からループ本体の最後までの制御文の実行を停止し、continue文ブロックに切り替えてから、ループ本体の先頭に戻って次のループを実行します。 |
last 文 | ループ文ブロックを終了し、ループを終了します。 |
continue 文 | 通常、continue文ブロックは、条件文が評価される前に実行されます。 |
redo 文 | redo文はループ本体の最初の行に直接移動してループします。redo文の後の制御文は実行しなく、continue文ブロックも実行しません。 |
goto 文 | Perlには3つのgoto文があります:get LABLE、goto EXPR、およびgoto&NAMEです。 |
無限ループ
条件がfalseにならない場合、ループは無限ループになります。
forループは、従来の意味で無限ループを実装するために使用できます。
ループを構成する3つの式はいずれも必要ないため、一部の条件式を空白のままにして、無限ループを構成できます。
実例
#!/usr/bin/perl
for( ; ; )
{
printf "無限ループが実行されます。\n";
}
Ctrl + Cを押すと、ループを終了できます。
条件式が存在しない場合は、trueと見なされます。 初期値とインクリメント式を設定できますが、通常、Perlプログラマーは for(;;)構造を使用して無限ループを表します。
コメントを残す