如果我有以下开关声明:
case number
when 10, 11, 12
do something
when 19, 20, 21
do something
end
并且number
是19,有没有办法在评估时使用块内的值进行比较?即在do something
的{{1}}块中,有没有办法获取匹配when 19, 20, 21
的任何值并将其发送到块中?
答案 0 :(得分:1)
你的意思是这样做吗?
def do_something(num)
puts num
end
case number
when 10, 11, 12
#do some other thing
when 19, 20, 21
do_something(number)
end
或者可能直接不使用任何方法:
case number
when 10, 11, 12
#do some other thing
when 19, 20, 21
puts "matched value is #{number}"
end