【Ruby3.x】Integer::upto()メソッドの使い方
uptoメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
uptoメソッドは、レシーバとなる整数から、指定された上限値までの範囲で、1ずつ値を増やしながら繰り返し処理を実行するメソッドです。Integerクラスのインスタンスに対して呼び出され、主にブロックを伴って使用されます。
このメソッドは引数として、繰り返し処理の終了となる整数を受け取ります。メソッドが実行されると、まずレシーバ自身の値が処理の最初の対象となり、その後、その値に1が加算された値、さらにその値に1が加算された値と順に増えていきます。この増加処理は、引数で指定された上限値に達するまで続けられ、上限値自身も処理の対象に含まれます。
各繰り返しにおいて、指定されたブロックが実行されます。ブロックには、現在の繰り返し値が引数として渡されるため、その値を利用した処理を記述することができます。例えば、「1から5まで順番に数え上げながら、それぞれの数字を表示する」といった処理を実現する際に非常に便利です。
もしレシーバの値が引数で指定された上限値よりも大きい場合、ブロックは一度も実行されずに処理が終了します。このメソッドは、数値の順序だった繰り返し処理を簡潔に記述するための、Rubyの強力なイテレータの一つです。
構文(syntax)
15.upto(10) { |i| puts i }
引数(parameters)
limit
- limit: 繰り返しの上限となる整数
戻り値(return)
Integer | Enumerator
指定された整数から、指定された上限値まで、1ずつ増加する整数を順番に生成するEnumeratorを返します。上限値に到達した時点で処理は終了します。