有效的默认范围

时间:2012-06-22 02:45:15

标签: ruby-on-rails ruby math set switch-statement

我想为一组范围设置默认值。

这是我的默认值:

options = {0: 'red',  20: 'yellow', 50: 'blue', 80: 'green'}

这是我的论点

value = 10

如何有效地创建它:

case value
when value < 10
  'red'
when value < 20
  'yellow'
when value < 50
  'blue'
when value < 80
  'gold'
else
  'green'

来自对象/哈希数据类型?

1 个答案:

答案 0 :(得分:3)

在ruby案例中,语句可以采用范围。实际上它很可爱......

color = case value
        when (0...10)
          'red'
        when (10...20)
          'yellow'
        when (20...30)
          'blue'
        when (30...40)
          'gold'
        else
         'green'