2012-06-22 161 views
0

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

这里是我的默认设置:

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

您的选项哈希不符合您的病例陈述;你没有黄金的选择。只是为了确保我们得到你的想法。 –

回答

3

在ruby case语句中可以使用范围。这实际上是非常甜...

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