Ruby中的条件语句有if
、unless
和case
三种,循环语句有while
、until
、for
和each
四种。
if
语句用于在条件满足的情况下执行一段代码。示例:
if condition
# do something
end
其中condition
为条件表达式,如果表达式为true
则执行do something
部分的代码。
如果if
语句只有一行代码可以使用if
修饰符简化代码,示例:
# do something if condition
unless
语句和if
语句作用相反,用于在条件不满足的情况下执行一段代码。示例:
unless condition
# do something
end
和if
语句一样,unless
语句也可以使用修饰符简化代码,示例:
# do something unless condition
case
语句用于根据不同的条件执行不同的代码。示例:
case variable
when value1
# do something
when value2
# do something
else
# do something
end
其中variable
为需要判断的变量名,value1
和value2
为不同的条件值。当variable
等于value1
时执行第一个do something
部分的代码,当variable
等于value2
时执行第二个do something
部分的代码,否则执行else
部分的代码。
while
语句用于在条件满足的情况下执行一段代码。示例:
while condition
# do something
end
其中condition
为条件表达式,如果表达式为true
则执行do something
部分的代码。
until
语句和while
语句作用相反,用于在条件不满足的情况下执行一段代码。示例:
until condition
# do something
end
for
语句可以用于循环一个范围内的数字或集合。示例:
for variable in range/collection
# do something
end
其中variable
为循环变量名,range
为数字范围,collection
为集合。循环变量variable
在循环时会依次取到范围内的每个数字或集合中的每个元素。
each
语句是一种特殊的循环语句,用于循环一个集合。示例:
collection.each do |variable|
# do something
end
其中collection
为需要循环的集合,variable
为循环变量,循环变量在循环时会依次取到集合中的每个元素。do something
部分的代码会针对每个元素执行一次。