在 Ruby 中,常用的条件语句有 if/else 语句和 case/when 语句。
if/else 语句用于在满足某个条件时执行一段代码块,否则执行另一段代码块。语法如下:
if <condition>
# do something
else
# do something else
end
其中 <condition> 是一个条件表达式,如果它的值为 true,则执行第一个代码块;否则执行第二个代码块。
此外,还可以使用 elsif 关键字来添加多个条件分支:
if <condition1>
# do something if condition1 is true
elsif <condition2>
# do something if condition2 is true
else
# do something if all conditions are false
end
case/when 语句用于根据不同的条件执行不同的代码块。语法如下:
case <expression>
when <condition1>
# do something if condition1 is true
when <condition2>
# do something if condition2 is true
else
# do something if all conditions are false
end
其中 <expression> 是一个表达式,它的值会被依次和每个 <condition> 进行比较,如果匹配成功,则执行对应的代码块。如果所有条件都不匹配,则执行 else 块中的代码。
case/when 语句还可以使用 when <condition1>, <condition2> 的形式来匹配多个条件,例如:
case <expression>
when <condition1>, <condition2>
# do something if either condition1 or condition2 is true
when <condition3>
# do something if condition3 is true
else
# do something if all conditions are false
end
上述代码中,如果 <expression> 和 <condition1> 或 <condition2> 中任意一个相等,则执行第一个代码块;如果和 <condition3> 相等,则执行第二个代码块;否则执行 else 块中的代码。
除了上述两种条件语句,Ruby 还提供了一些其他的条件语句,例如 unless 语句和 ternary operator。