使用 (2..100)
语法,是否有一种简单的方法来评估整数是否在该范围内?
例如,假设我希望在整数 x = 100
,并且我的范围是 (0..200)
,我只想找到简单、简洁的 Ruby 方法来实现这个功能。
使用 (2..100)
语法,是否有一种简单的方法来评估整数是否在该范围内?
例如,假设我希望在整数 x = 100
,并且我的范围是 (0..200)
,我只想找到简单、简洁的 Ruby 方法来实现这个功能。
在 Ruby 中,有很多种做同一件事情的方法。你可以使用以下方法检查值是否在范围内:
14.between?(10,20) # true
(10..20).member?(14) # true
(10..20).include?(14) # true
但我建议使用 between?
而不是 member?
或者 include?
。
所有数字字面量都表示包含范围。你可以在 Ruby in Rails 找到更多相关信息。
(1..10) === 1 #=> true
(1..10) === 100 #=> false
1 === (1..10)
将会产生错误的结果。 - Kovo你可以使用range的member?
方法来测试这个。
(1..10).member?(1) => true
(1..10).member?(100) => false
(2..100).include?(5) #=> true
(2..100).include?(200) #=> false
2..0
是一个空范围,因此对于所有值的x
,(2..0).include?(x)
都将返回false
。