Ruby 1.8.7 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Rangeクラス > ===
self === obj -> bool
[permalink][rdoc]include?(obj) -> bool
member?(obj) -> bool
obj が範囲内に含まれている時に真を返します。
Range#=== は主に case 式での比較に用いられます。
include? が、Enumerable#include?,Enumerable#member? と異なり <=> メソッドによる演算により範囲内かどうかを判定することに注意する必要があります。
p (0.1 .. 0.2).include?(0.15) # => true # 1.8.1 以前 p (0.1 .. 0.2).member?(0.15) # => cannot iterate from Float (TypeError) # 1.8.2 以降 p (0.1 .. 0.2).member?(0.15) # => true # 文字列の場合、include? は辞書順の比較になる p ("a" .. "c").include?("ba") # => true # 1.8.1 以前 p ("a" .. "c").member?("ba") # => false # 1.8.2 以降 p ("a" .. "c").member?("ba") # => true # 1.9.1 以降 p ("a" .. "c").include?("ba") # => false p ("a" .. "c").member?("ba") # => false
[SEE_ALSO] 制御構造/case