redo文 - 繰り返しの先頭に戻る
redo文を使うと繰り返しの先頭に戻ることができます。
redo
redoを使ったサンプルプログラムです。今いるループの先頭に戻っています。
use strict; use warnings; my @nums = (1, 2, 3); while (1) { my $num = pop @nums; print "$num\n"; if (@nums) { redo; } else { last; } }
redoは非推奨の構文です
Perlの現代的な記述方法にも書いていますが、redo文は、お勧めしない記述方法です。
理由は、while文, for文, last文, next文、if文があれば、あらゆる繰り返しと条件分岐が書けるので、redoを積極的に利用する理由がないからです。redoは、Perl独自の構文で、見慣れないものですし、ソースコードの見通しがよくなるというわけでもありません。
関連情報
redoのようにループを制御する構文としてnext文とlast文があります。
next文を使うとループの先頭にジャンプできる
next文を使うと、次のループの先頭に移動することができます。
next
next文については、以下の記事を参考にしてください。
last文を使うとループを脱出できる
last文を使うと、ループを抜けることができます。
last
last文については、以下の記事を参考にしてください。