循环由顺序执行的组指令组成,这些指令重复执行直到满足特定条件为止。循环为简化程序员的任务提供了很大的帮助。
Ruby支持以下类型的循环:
while循环
for循环
do ... while循环
直到循环
在while循环中,循环的运行条件在顶部提供了while关键字。它是Entry控制循环的一种形式,当满足指定条件时指针会跳出。
当重复次数不固定时,建议使用while循环。
语法:
while (condition ) # 要执行的代码 end
示例
num=5 while num!=0 puts "Number is greater than zero" num-=1 end
输出结果
Number is greater than zero Number is greater than zero Number is greater than zero Number is greater than zero Number is greater than zero
在上面的代码中,您可以观察到迭代次数不是固定的。它取决于条件中指定的变量。
for循环与while循环仅在语法方面不同,否则它们都具有相同的功能。它是Entry控制循环的一种形式,必须在执行循环之前指定迭代次数。它在给定的数字范围内重复。
语法:
for variable_name[, variable...] in expression [do] # 要执行的代码 end
示例
i = "Nhooo" for l in 1..7 do puts i end
输出结果
Nhooo Nhooo Nhooo Nhooo Nhooo Nhooo Nhooo
这是一种退出控制循环。它与while循环非常相似,但不同之处在于在执行指定语句后测试条件。如果希望表达式必须至少执行一次,则应执行do ... while循环。
语法:
loop do # 代码块 break if Condition end
示例
num = 0 loop do puts "Nhooo.com" num+=1 if num==8 break end end
输出结果
Nhooo.com Nhooo.com Nhooo.com Nhooo.com Nhooo.com Nhooo.com Nhooo.com Nhooo.com
根据功能,直到循环是while循环的反义词。当条件变为假时,while循环终止,但是当布尔表达式的值为真时,直到循环终止。它是Entry控制循环的示例之一,其中在执行表达式之前指定条件。
语法:
until conditional [do] # 要执行的代码 end
示例
num = 8 until num == 13 do puts "Hi there! Welcome to the tutorial" num+=1 end
输出结果
Hi there! Welcome to the tutorial Hi there! Welcome to the tutorial Hi there! Welcome to the tutorial Hi there! Welcome to the tutorial Hi there! Welcome to the tutorial