在 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
。