ruby案例陈述与比较

有没有办法在ruby中使用带有整数比较的case语句? 我找到了很多比较字符串的例子,但是下面我的case示例因语法错误而失败。

 def get_price_rank(price) case price when = 90 return 'Rich!' end end 

如果case..when阻止你不能执行任何比较,除了=== 。 所以我写下你的代码如下:

 def get_price_rank(price) case price when 41..50 'Sorta cheap' when 50..60 'Reasonable' when 60..70 'Not cheap' when 70..80 'Spendy' when 80..90 'Expensive!' else if price >= 90 'Rich!' elsif price <= 40 'Cheap!' end end end 

return隐含的 ,因此无需提及。

像这样改写你的情况:

 case price when 0..40 then return 'Cheap!' when 41..50 then return 'Sorta cheap' when 50..60 then return 'Reasonable' when 60..70 then return 'Not cheap' when 70..80 then return 'Spendy' when 80..90 then return 'Expensive!' else return 'Rich!' end