如何在 Ruby 中编写 switch 语句

问题描述

Ruby 使用case表达式代替。

case x
when 1..5
  "It's between 1 and 5"
when 6
  "It's 6"
when "foo", "bar"
  "It's either foo or bar"
when String
  "You passed a string"
else
  "You gave me #{x} -- I have no idea what to do with that."
end

Ruby使用运算符when将子句中的对象与子句中的对象进行比较。例如,,而不是。case``===``1..5 === x``x === 1..5

这允许使用when如上所示的复杂子句。范围、类和各种各样的东西都可以被测试,而不仅仅是相等。

switch许多其他语言中的语句不同,Rubycase没有贯穿的语句,因此不需要以.when结尾break。您还可以在单个when子句中指定多个匹配项,例如when "foo", "bar".

解决方法

如何在 Ruby 中编写 switch 语句

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...