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部分的代码会针对每个元素执行一次。