Mar*_*als 22 ruby conditional-statements
我试图表达这样的条件:
if 33.75 < degree <= 56.25
# some code
end
Run Code Online (Sandbox Code Playgroud)
但是Ruby给出了这个错误:
undefined method `<=' for true:TrueClass
Run Code Online (Sandbox Code Playgroud)
我猜测一种方法是这样的:
if 33.75 < degree and degree <= 56.25
# code
end
Run Code Online (Sandbox Code Playgroud)
但是没有另一种更简单的方法吗?
小智 71
Ruby之间也有?:
if value.between?(lower, higher)
Run Code Online (Sandbox Code Playgroud)
你可以表达a <= x <= b
作为(a..b).include? x
和a <= x < b
作为(a...b).include? x
.
>> (33.75..56.25).include? 33.9
=> true
>> (33.75..56.25).include? 56.25
=> true
>>
>> (33.75..56.25).include? 56.55
=> false
Run Code Online (Sandbox Code Playgroud)
遗憾的是,似乎是没有这样的事a < x <= b
,a < x < b
..
UPDATE
你可以完成使用(-56.25...-33.75).include? -degree
.但它很难读懂.所以我建议你使用33.75 < degree and degree <= 56.25
.
归档时间: |
|
查看次数: |
16738 次 |
最近记录: |