脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Ruby - Ruby简明教程之循环语句介绍

Ruby简明教程之循环语句介绍

2020-04-14 10:37脚本之家 Ruby

这篇文章主要介绍了Ruby简明教程之循环语句介绍,非常简洁的讲解,可以作为语法备忘,需要的朋友可以参考下

循环结构在编程语言中是不可或缺的,所以Ruby中的循环也有其自定义的规则。

而我们关注循环结构,要知道两个因素:1) 循环的条件;2) 循环执行的内容

Ruby有一些方式来实现循环结构体:

1. times方法

在前面已经有提到过了,语法如下:

复制代码 代码如下:

循环次数.times do                    循环次数.times {
      重复执行的动作                          重复执行的动作              
end                                               }

 

#也可以在times模块中加入变量

5.times { |i|
    print "This is the", i+1, " time. \n"
}

# i变量是从0开始计算的

 

2. for 语句

复制代码 代码如下:

语法:
for 变量 in 开始数值..结束数值 do
   反复执行的动作
end

 

# do是可以省略的

from = 0
to = 20
sum = 0
for i in from..to
   sum += 1
end

语法:
for 变量 in 对象
  反复执行的动作
end

names = ["Windy", "Cindy", "Jack", "Hugo"]
for name in names
   print name, " likes Ruby. \n"
end


第二个语法的for语句,与java中的for each语句非常类似,for (i in list?) {...}

 

3. while 语句

while语句与JAVA中也是类似的

复制代码 代码如下:

语法:
while 条件 do
   反复执行的动作
end

 

a = 1
sum = 0
while a < 10 do
   sum += a
   i += a
end

 

4. until 语句
其语法与while语句类似,只是只有条件不符合的时候,才会反复执行循环

 

复制代码 代码如下:

语法:
until 条件 do
    反复执行的动作
end
# do可以省略

 

sum = 0
until sum > 50
   sum += 1
end
print sum

# 以上until循环可以转换成下面的while循环
while !(sum > 50)
   sum += 1
end

 

5. each 方法
在前面已经提到过这个方法了,这里就简要记录下语法

复制代码 代码如下:

对象.each { |变量|

 

     想要反复执行的动作

}

 

6. loop方法

它是一种没有结束条件的方法,只是不断进行循环处理,示例如下:

复制代码 代码如下:

loop {
   print "Ruby"
}

 

循环的控制:

主要有如下关键字:break,next,redo;而在java中,则有break,continue,return

       命令 用途
break 停止动作,马上跳出循环
next 直接跳到下一个循环
redo 以相同的条件重新执行这一次循环

 

总结:当次数固定时,使用times方法比较好,而其他大部分循环几乎都可以使用while和each方法。

延伸 · 阅读

精彩推荐
  • RubyCentOS中配置Ruby on Rails环境

    CentOS中配置Ruby on Rails环境

    经过一个上午的折腾,终于把ROR环境在CentOS中搞定,绕了很多弯路,把文章写下来总结一下 ...

    可乐加糖4762020-04-12
  • Ruby简要说明Ruby中的迭代器

    简要说明Ruby中的迭代器

    这篇文章主要介绍了Ruby中的迭代器,迭代器的概念在动态语言的编程中十分重要,文章中介绍了Ruby中的each迭代器和collect迭代器,需要的朋友可以参考下 ...

    goldensun2772020-04-25
  • Ruby剖析 Ruby 访问控制

    剖析 Ruby 访问控制

    前面,我们说 Ruby 没有函数,只有方法.而且实际上有不止一种方法.这一节我们介绍 访问控制 (accesscontrols). 想想当我们在最高层而不是在一个类的定义里定义...

    ruby教程网3572020-04-08
  • RubyRuby简洁学习笔记(一):字符串、数字、类和对象

    Ruby简洁学习笔记(一):字符串、数字、类和对象

    这篇文章主要介绍了Ruby简洁学习笔记(一):字符串、数字、类和对象,本文是学习笔记第一篇,需要的朋友可以参考下 ...

    脚本之家2472020-04-20
  • RubyRuby环境下安装使用bundler来管理多版本的gem

    Ruby环境下安装使用bundler来管理多版本的gem

    这篇文章主要介绍了Ruby环境下安装使用bundler来管理多版本的gem的方法,举了Ruby On Rails中的应用实例来进行演示,需要的朋友可以参考下 ...

    日拱一卒4332020-05-10
  • RubyRuby设计模式编程中使用Builder建造者模式的实例

    Ruby设计模式编程中使用Builder建造者模式的实例

    这篇文章主要介绍了Ruby设计模式编程中使用Builder建造者模式的实例,建造者模式将一个复杂对象的构造与它的表示分离,使同样的构建过程可以创建不同的表...

    范孝鹏2192020-05-07
  • RubyRuby进行文件信息输出实例代码

    Ruby进行文件信息输出实例代码

    Ruby进行文件信息输出实例代码,数据是随机的,所以每次的记录都会不同。 ...

    ruby教程网2962020-04-10
  • RubyRuby迭代器的7种技巧分享

    Ruby迭代器的7种技巧分享

    这篇文章主要介绍了Ruby迭代器的7种技巧分享,Ruby中的迭代器非常人性化,本文既是讲解了7个技巧也是讲解了7种迭代器,需要的朋友可以参考下 ...

    脚本之家4782020-04-20