loopメソッドを使って繰り返し回数に制限なく繰り返しを行う
loop メソッドは Kernel モジュールで用意されているメソッドです。繰り返し回数に制限のない無限ループを行いたいときに使用します。 Kernel モジュールのメソッドですので組み込み関数のように使用することができます。ここでは Ruby で loop メソッドを使って繰り返し回数に制限なく繰り返し処理を行う方法について解説します。
(Last modified: )
目次
loopメソッドの使い方
loop
メソッドは無限ループを行いときに使用します。使い方は次のとおりです。
loop{ 実行する処理1 実行する処理2 }
loop
メソッドでは {
から }
までの処理を繰り返し実行します。 loop
メソッド自身に繰り返しを終了する条件は指定できませんので、実行される処理の中で繰り返しを終了するための何らかの処理を記述する必要があります。
下記の例では繰り返し処理の中である条件を満たしたときに break
文を使って繰り返し処理を抜けています。
num = 1 loop{ puts("num = " + num.to_s) num += 1 if num > 10 then break end }
break
文を実行すると一番内側のループを抜けることができます。詳しくは「break文を使って繰り返し処理を抜ける」を参照されてください。
では簡単なプログラムで確認してみます。
# encoding: UTF-8 num = 1 loop{ puts("num = " + num.to_s) num *= 2 if num > 1024 then break end }
下記のように実行して下さい。
1 から 2 倍ずつしていき 1024 を超えたら繰り返し処理を終了しています。
-- --
Ruby で loop メソッドを使って繰り返し回数に制限なく繰り返し処理を行う方法について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。