检查整数是否在一个范围内

JP *_*shy 51 ruby

我不知道我是只是在寻找错误的东西或者是什么,但是有一种简单的方法来评估范围并使用(2..100)语法检查整数是否在该范围内.

例如,如果我的整数x = 100和我的范围是(0..200),我想要评估为真,我只是在寻找简单,简洁的红宝石方式.

Aks*_*ite 106

在Ruby中有很多方法可以做同样的事情.您可以使用以下方法检查值是否在范围内,

14.between?(10,20) # true

(10..20).member?(14) # true

(10..20).include?(14) # true

但是,我建议使用between?而不是member?include?

所有数字文字都表示包含范围.您可以在Ruby in Rails中找到更多相关信息.


Rud*_*ela 18

您可以使用===运算符:

(1..10) === 1 #=> true
(1..10) === 100 #=> false
Run Code Online (Sandbox Code Playgroud)

  • 请注意,在使用此解决方案时,我发现您需要注意条件写入的顺序`1 === (1..10)` 将产生错误 (4认同)

Nik*_*ohl 12

你可以使用member?范围的方法来测试这个

 (1..10).member?(1)   => true
 (1..10).member?(100) => false 
Run Code Online (Sandbox Code Playgroud)


sep*_*p2k 9

(2..100).include?(5) #=> true
(2..100).include?(200) #=> false
Run Code Online (Sandbox Code Playgroud)

请注意,这2..0是一个空范围,因此(2..0).include?(x)将返回false所有值x.