- 使用loop .. do 实现
- 使用 for 循环实现
- 使用 while 实现
loop方法是Kernel模块中提供的一个用来做无限循环的方法:
loop { p "hello world" }
def sum_to_3000 result = 0 i = 0 loop do result = result + i puts "=== i : #{i}, result: #{result}" i = i + 1 if i > 3000 break end end return result end puts sum_to_3000()
创建ruby文件 并执行,看到效果
for..in循环是迭代测试性循环,从一个容器中检测是否存在下一个元素,存在则迭代。for内部使用的是each方法,for是一个语法糖类型的语法式循环语句:
for variable [, variable ...] in expression [do] code end
先计算表达式得到一个对象,然后针对 expression 中的每个元素分别执行一次 code
def for_sum_3000 i = 0 result = 0 for i in 0..3000 i +=1 result = i + result puts result end end puts for_sum_3000()
while 循环在大多数编程语言中都可用,因此了解它总是有用的。当其他一切都失败时,这也是一种你可以回退的循环。
在某些情况下,只有 while 循环才有意义。例如,如果你不知道需要提前循环多少次。
def while_sum_3000 begin i = 0 result = 0 while i < 3000 do i +=1 result = i + result puts result end end end puts while_sum_3000()
执行 即可看到结果