我正在使用 Ruby on Rails 3,我想使用一个 case
语句,即使在匹配了一个 when
语句之后,它也可以继续检查其他 when 语句
直到最后一个 else
。
例如
case var
when '1'
if var2 == ...
...
else
...
puts "Don't make nothig but continue to check!"
# Here I would like to continue to check if a 'when' statement will match 'var' until the 'else' case
end
when '2'
...
...
else
put "Yeee!"
结束
在 Ruby 中可以吗?如果是,怎么做?
最佳答案
我看到的大多数来自 ruby 的代码都是使用 if elsif else
完成的,但您可以模仿类似于其他语言的 switch 逻辑表达式,如下所示:
case var
when 1
dosomething
when 2..3
doSomethingElse
end
case
when var == 1
doSomething
when var < 12
doSomethingElse
end
这来自这个SO Question .就像我说的,这通常是在 ruby 中使用 if elsif else
完成的,例如:
if my_number == "1"
#do stuff when equals 1
elsif my_number == "e"
#same thing here
else
#default, no case found
end
关于ruby-on-rails - 执行 'case' 语句以匹配多个 'when' 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5213535/