Ruby-loops
Ruby-ループ
Rubyのループは、同じコードブロックを指定された回数実行するために使用されます。 この章では、Rubyがサポートするすべてのループステートメントについて詳しく説明します。
Ruby whileステートメント
構文
_conditional_がtrueのときに_code_を実行します。 _while_ループの_conditional_は、予約語do、改行、バックスラッシュ\、またはセミコロン;によって_code_から分離されています。
例
これは、次の結果を生成します-
Ruby while修飾子
構文
_conditional_がtrueのときに_code_を実行します。
_rescue_またはensure句のない_begin_ステートメントの後に_while_修飾子が続く場合、_code_は条件が評価される前に1回実行されます。
例
これは、次の結果を生成します-
Ruby until Statement
conditional_がfalseのときに_code_を実行します。 _until_ステートメントの条件は、予約語_do、改行、またはセミコロンによって_code_から分離されます。
例
これは、次の結果を生成します-
修飾子までルビー
構文
_conditional_がfalseのときに_code_を実行します。
_until_修飾子が_rescue_またはensure句のない_begin_ステートメントの後に続く場合、_condition_が評価される前に_code_が1回実行されます。
例
これは、次の結果を生成します-
ステートメントのルビー
構文
_expression_の各要素に対して_code_を1回実行します。
例
ここで、範囲0..5を定義しました。 0..5の_i_のステートメントにより、_i_は0から5(5を含む)の範囲の値を取ることができます。 これは、次の結果を生成します-
_for … in_ループは、次とほぼ正確に同等です-
ただし、_for_ループはローカル変数の新しいスコープを作成しません。 _for_ループの_expression_は、予約語do、改行、またはセミコロンによって_code_から分離されます。
例
これは、次の結果を生成します-
Ruby breakステートメント
構文
最も内部的なループを終了します。 ブロック内で呼び出された場合(nilを返すメソッドで)、関連付けられたブロックでメソッドを終了します。
例
これは、次の結果を生成します-
Rubyの次のステートメント
構文
最も内部的なループの次の反復にジャンプします。 (_yield_またはnilを返す呼び出しで)ブロック内で呼び出された場合、ブロックの実行を終了します。
例
これは、次の結果を生成します-
Ruby REDOステートメント
構文
ループ条件をチェックせずに、最も内部的なループのこの反復を再開します。 ブロック内で呼び出された場合、_yield_または_call_を再起動します。
例
これは、次の結果を生成し、無限ループに入ります-
Ruby再試行ステートメント
構文
_retry_がbegin expressionのrescue句に表示される場合、begin bodyの先頭から再開します。
イテレータ、ブロック、または_for_式の本体に再試行が表示される場合、イテレータ呼び出しの呼び出しを再開します。 反復子の引数が再評価されます。
例
これは、次の結果を生成し、無限ループに入ります-