网站首页ruby学习

ruby 循环

发布时间:2015-09-13编辑:Vincent H阅读(253)

    while语句

    while conditional [do]
       code
    end

    当conditional为真时,执行code。while循环的conditional通过保留字do、一个换行符、反斜线 \ 或一个分号 ; ,来与code分离开。


    while修饰符

    code while condition
    
    或者
    
    begin 
      code 
    end while conditional

    当conditional为真时,执行code。

    如果while修饰符跟在一个没有rescue或ensure子句的begin语句后面,code会在conditional判断之前执行一次。

    until语句

    until conditional [do]
       code
    end

    当conditional为假时,执行code。until语句的conditional通过保留字do、一个换行符或一个分号,来与code分离开。


    until修饰符

    code until conditional
    
    OR
    
    begin
       code
    end until conditional

    当conditional为假时,执行code。

    如果until修饰符跟在一个没有rescue或ensure子句的begin语句后面,code会在conditional判断之前执行一次。


    for语句

    for variable [, variable ...] in expression [do]
       code
    end



    for..in <==> .each do



    break语句

    终止最内部的循环。如果在块内调用,则终止相关块的方法(方法返回 nil)。



    next语句

    跳到最内部循环的下一个迭代。如果在块内调用,则终止块的执行(yield 或调用返回 nil)。


    redo 语句

    重新开始最内部循环的该次迭代,不检查循环条件。如果在块内调用,则重新开始 yield 或 call。

    #!/usr/bin/rubyfor i in 0..5
       if i < 2 then
          puts "Value of local variable is #{i}"
          redo
       end
    end

    这将产生以下结果,并会进入一个无限循环:

    Value of local variable is 0
    Value of local variable is 0
    ............................


    retry语句

    如果 retry 出现在 begin 表达式的 rescue 子句中,则从 begin 主体的开头重新开始。

    begin
       do_something # 抛出的异常rescue
       # 处理错误
       retry  # 重新从 begin 开始
    end

    如果 retry 出现在迭代内、块内或者 for 表达式的主体内,则重新开始迭代调用。迭代的参数会重新评估。

    for i in 1..5
       retry if some_condition # 重新从 i == 1 开始
    end



    收录情况:百度已收录,点击查看详情
    本文地址:http://luvial.cn/content/10024.html
    转载请保留原文地址!

    如果您觉得本文对您有帮助,且您有经济能力,欢迎捐助本站
标签: ruby 循环
上一篇:2015软院青志协招新视频
下一篇:ruby方法