ruby - 无论如何我可以使用 if else inside ruby​​ case..end

标签 ruby switch-statement

case search_term
when 'a'
  ptr = 0
when 'b'
  ptr = 1
when 'c' 
  ptr = 2
else
  ptr = 99
end

if location = 'xyz' and search_term = 'c'
ptr = 0
end

有什么方法可以在 case 语句中包含上面的 if 吗?

最佳答案

ptr = case search_term
when 'a'
   0
when 'b'
   1
when 'c' 
  if location == 'xyz' then  #note the ==
    0 
  else 
    2
  end 
else
  99
end

关于ruby - 无论如何我可以使用 if else inside ruby​​ case..end,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40537082/

相关文章:

Java - 重复的案例标签

c - 我的 switch 语句没有从 ​​for 循环中获取值

ruby - 如何 stub 在初始化方法中调用的方法

ruby - Watir-webdriver,即使找到了 "cast"元素也无法对其进行子类型化

ruby - 哪些 IDE 可用于 jRuby?

java - 打印 Getter 方法

javascript - 有没有更好的方法在 JavaScript 中编写这个开关?

c++ - 限制用户输入

ruby-on-rails - 在调用之前检查方法/属性是否被定义

ruby - 如何使用 SparkPosts Ruby API 客户端设置reply_to/reply-to?