【发布时间】:2011-03-31 03:32:10
【问题描述】:
有没有一种简单的方法可以使用(2..100) 语法来评估一个整数是否在该范围内。
例如,假设如果我的整数 x = 100 和我的范围是 (0..200),我想评估为真,我只是在寻找简单、简洁的 ruby 方式来执行此操作。
【问题讨论】:
标签: ruby
有没有一种简单的方法可以使用(2..100) 语法来评估一个整数是否在该范围内。
例如,假设如果我的整数 x = 100 和我的范围是 (0..200),我想评估为真,我只是在寻找简单、简洁的 ruby 方式来执行此操作。
【问题讨论】:
标签: ruby
在 Ruby 中有很多方法可以做同样的事情。您可以使用以下方法检查值是否在范围内,
14.between?(10,20) # true
(10..20).member?(14) # true
(10..20).include?(14) # true
但是,我建议使用between? 而不是member? 或include?
所有数字文字都表示包含范围。 您可以在 Ruby in Rails 上找到更多相关信息。
【讨论】:
您可以使用=== operator:
(1..10) === 1 #=> true
(1..10) === 100 #=> false
【讨论】:
1 === (1..10) 的条件的顺序将产生错误
你可以使用范围的member?方法来测试这个
(1..10).member?(1) => true
(1..10).member?(100) => false
【讨论】:
(2..100).include?(5) #=> true
(2..100).include?(200) #=> false
请注意,2..0 是一个空范围,因此(2..0).include?(x) 将为x 的所有值返回false。
【讨论】:
【讨论】: