【Ruby3.x】Range::cover?()メソッドの使い方
cover?メソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
cover?メソッドは、RubyのRangeオブジェクトが指定された値を論理的に包含するかどうかを判定するメソッドです。Rangeオブジェクトは、開始値と終了値を持つ連続した値の範囲を表します。
このメソッドは、引数として渡された値がRangeの開始点と終了点の間に位置するかどうかを比較することで判定を行います。具体的には、対象の値がRangeの始端以上であり、かつ終端以下であるか(終端が排他的なRangeの場合は終端未満であるか)を確認します。Rangeに含まれるすべての値を実際に列挙可能かどうか(イテレート可能かどうか)は考慮せず、あくまで端点の比較に基づいて判定するため、広範な値の論理的包含関係を高速にチェックできます。
値がRangeの範囲内であれば真(true)を、範囲外であれば偽(false)を返します。この機能は、ある数値が特定の区間内にあるか、あるいは文字が特定のアルファベット範囲にあるかといった、入力値のバリデーションや条件分岐ロジックの実装において大変有用です。
構文(syntax)
1(1..10).cover?(5)
引数(parameters)
value
- value: 範囲内に含まれるか判定する値
戻り値(return)
Boolean
指定された値がレールの範囲内に含まれているかどうかを示す真偽値(trueまたはfalse)を返します。