比较符号(小于,小于或等于等)

时间:2019-02-14 01:14:10

标签: ruby

我想知道如何测试变量是否在两个值之间,例如1和10。例如,我具有以下内容:

bullet_hit = rand(1..10)
if 1 < bullet_hit < 10
  ...

我认为我的语法错误。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

您可以使用Range#cover吗?方法:

(2..9).cover?(bullet_hit)

对于bullet_hit值为2、3、4、5、6、7、8或9的返回值为true。

答案 1 :(得分:1)

您可以使用最简单的语法来做到这一点:

<% bullet_hit = rand(1..10) %>
<% if 1 < bullet_hit && bullet_hit < 10 %>
  <%= bullet_hit %>
<% end %>

但是您有很多方法可以做到这一点,例如:

bullet_hit.between?(1,10) # true

(1..10).member?(bullet_hit) # true

(1..10).include?(bullet_hit)