next演算子を使って次の繰り返しへ処理を移す
next 演算子を使用すると現在の繰り返し処理を最後までスキップし次の繰り返しへ処理を進めることができます。ここでは Perl のプログラムの中で next 演算子の使い方について解説します。
(Last modified: )
目次
next演算子の使い方
next
演算子を実行すると、その時実行している繰り返しを最後の位置までスキップさせて次の繰り返しに進みます。書式は次の通りです。
next;
例えば次の例で考えてみます。
my $count = 0; while ($count <= 5){ $count++; if ($count == 2){ next; } print "$count\n"; #next演算子が実行されるとこの位置に進む } print "終了\n";
上記では繰り返し処理の中で条件判断を行い、変数 $count が 2 と等しい時には next
演算子が実行されます。 next
演算子が実行されると繰り返し処理の最後の位置までの処理はすべてスキップし、次の繰り返しへ進みます。その為、今回の例では変数 $count が 2 と等しい時には print "$count\n";
が実行されません。
next
演算子の場合も対象となる繰り返し処理というのは、 while
文、 until
文、 for
文、foreach
文の他に空のブロックが対象となります。 if
文などは対象外ですので、上記のサンプルで next
演算子が実行された時に繰り返し処理の最後まで進むのは if
文ではなく while
文となります。
それでは簡単なサンプルを作成します。
use strict; use warnings; use utf8; binmode STDIN, ':encoding(cp932)'; binmode STDOUT, ':encoding(cp932)'; binmode STDERR, ':encoding(cp932)'; my $count = 0; while ($count < 5){ $count++; if ($count == 2){ next; } print "$count\n"; } print "End\n";
テキストエディタでプログラムを記述したあと sample.pl という名前で保存します。(文字コードは UTF-8 です)。コマンドプロンプトを起動し、プログラムを保存したディレクトリへ移動したあとで次のように実行します。
perl sample.pl
次のように実行結果が表示されます。
繰り返し処理の中で変数の値が 2 と等しい場合は next
演算子を使って繰り返し処理の最後まで処理が移動します。結果として変数の値が 2 と等しいときだけ画面に出力がされません。
-- --
Perl のプログラムの中で next 演算子の使い方について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。