Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】Range::size()メソッドの使い方

sizeメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

sizeメソッドは、RubyのRangeクラスに属し、指定された範囲オブジェクトが含む要素の数を計算し、その結果を返すメソッドです。このメソッドは、主に数値の範囲において、効率的に要素数を取得するために利用されます。

数値の範囲では、1..5のような開始から終了までを含む閉じた範囲の場合、最後の値 - 最初の値 + 1で計算された5を返します。一方、1...5のように終了値を含まない開いた範囲の場合は、最後の値 - 最初の値で計算された4を返します。

しかし、すべてのRangeオブジェクトで要素数を計算できるわけではありません。文字列の範囲(例: 'a'..'z')や日付の範囲のように、連続する要素の数を明確に定義できない場合、sizeメソッドはnilを返します。また、範囲の開始値が終了値より大きいなど、有効な範囲を形成しない場合もnilが返されます。

さらに、1....10といった無限範囲に対してsizeメソッドを呼び出すと、要素数が無限であることを示す特別な値Float::INFINITYを返します。

このように、sizeメソッドはRangeオブジェクトの特性に応じて多様な結果を返すため、プログラム内で範囲の処理を行う際に、その要素数を正確に把握するために利用されます。システムエンジニアを目指す方々にとって、範囲オブジェクトの理解を深める上で役立つでしょう。

構文(syntax)

1(1..5).size

引数(parameters)

引数なし

引数はありません

戻り値(return)

Integer または nil

Rangeオブジェクトが表す範囲に含まれる要素の個数を整数で返します。範囲に要素が含まれない場合はnilを返します。

関連コンテンツ