ruby的循环有以下几种:

times方法  for  while  until(与while相反)

each(与for极度相似,在ruby内部,for语句是用each实现的)  loop(无限循环,与break搭档)

下 表是循环控制命令

redo 在相同条件下重复刚才的处理
break 终止全部程序,跳出循环
next 跳到下一次循环

举例如下:break 会终止全体程序

p "break的例子"
i = 0
["a", "b", "c", "d", "e"].each do |name|
i += 1
if i ==3
break
end
p [i,name]
end #=》

"break的例子"
[1, "a"]
[2, "b"]


next使用后,程序会忽略后面的部分,开始进行下一次循环

p "next的例子"
i = 0
["a", "b", "c", "d", "e"].each do |name|
i += 1
if i ==3
next
end
p [i,name]
end #=>

"next的例子"
[1, "a"]
[2, "b"]
[4, "d"]
[5, "e"]

p "redo的例子"
i = 0
["a", "b", "c", "d", "e"].each do |name|
i += 1
if i ==3
redo
end
p [i,name]
end

"redo的例子"
[1, "a"]
[2, "b"]
[4, "c"]
[5, "d"]
[6, "e"]

 

ruby的循环控制命令loop等的更多相关文章

  1. ruby中输入命令行编译sass(ruby小白)

    Ruby(或cmd中)输入命令行编译sass步骤如下: (1)举例而言:首先在F盘下建立一个总文件夹,比如test文件夹:其次在该文件夹下建立html,images,js,sass等文件夹. (2)在 ...

  2. ruby+gem常用命令

    gem是一种文件组织的包,一般的ruby的很多插件都有由这种各种的包提供.我们来看看gem的用法     ruby -v #查看ruby 版本 ruby -e ''require"watir ...

  3. rbenv更新ruby后rails命令无效的解决方案

    创建: 2017/11/02 更新: 2018/02/02 增加rbenv使用方法的链接     rbenv的使用: http://www.cnblogs.com/lancgg/p/8281739.h ...

  4. ruby 安装 mysql2 命令

    sudo apt-get install libmysql-ruby libmyclient-dev

  5. ruby基础(一)

    Ruby基础 1.对象.变量和常量 1.1 对象 在Ruby中表示数据的最基本单位是对象,任何数据都是对象,使用类来表示对象的种类. 一个某个类的对象称作对象的实例. 对象 类 eg 数值 Numer ...

  6. Linux Shell编程(18)—— 循环控制

    影响循环行为的命令break, continuebreak和continue这两个循环控制命令[1]与其它语言的类似命令的行为是相同的. break命令将会跳出循环,continue命令将会跳过本次循 ...

  7. Ruby 对多语言的支持

    这是一篇翻译文章,原文链接 http://blog.grayproductions.net/articles/understanding_m17n.原文是一个系列,翻译过来整合成了一篇文章,对文章内容 ...

  8. ruby 学习笔记 1

    写ruby blog  系统的记录下.也是对我学ruby的点滴记录. 先介绍下我的学习环境.系统:ubuntu12.04文档:techotopia ,ruby文档,the hard way learn ...

  9. Ruby学习心得之 Linux下搭建Ruby环境

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Ruby学习心得之 Linux下搭建Ruby环境1.前言2.Linux下安装Ruby环境 一 ...

随机推荐

  1. maven jstl、jsp、servlet依赖

    jstl.jsp.servlet依赖 <dependency> <groupId>javax.servlet</groupId> <artifactId> ...

  2. lodop 代码注释

    LODOP.SET_PRINT_PAGESIZE(1,1000,1500,"");  /*1,纵向输出;1000,宽度;1500,高度*:单位为0.1毫米/LODOP.ADD_PR ...

  3. Hive是读时模式

    Hive处理的数据是大数据,在保存表数据时不对数据进行校验,而是在读数据时校验,不符合格式的数据设置为NULL: 读时模式的优点是,加载数据库快. 传统的数据库如mysql.oracle是写时模式,不 ...

  4. 搭建Kafka开发环境

    Kafka版本是:kafka_2.10-0.8.2.1 1.maven工程方式 在pom.xml中配置kafka依赖 1 2 3 4 5 <dependency>     <grou ...

  5. zookeeper应用 - 监控

    服务器端:监听zk上父节点的子节点变化 package monitor; import java.util.List; import java.util.concurrent.CountDownLat ...

  6. lombok的简单介绍(2)

    在和idea中整合遇到这样问题,实体对象不提示lombok的get/set方法,从网上找到以下方法,分享给大家

  7. clr_zmq Vs2010版本

    .net的消息队列很方便的一个库. 在github上的主版本虽然也支持fw4.0,但是必须使用vs2012以上进行编译. 这样就依赖vcredist运行时. 因为win7 sp1以下版本,无法安装vc ...

  8. simple Terracotta session 同步

    部署前提: 配置好java环境和已有tomcat实例. 地址1:http://vdisk.weibo.com/s/dzUJr1vLcAWHl 地址2:http://code.taobao.org/p/ ...

  9. Azure 和 Linux

    Azure 正在不断集结各种集成的公有云服务,包括分析.虚拟机.数据库.移动.网络.存储和 Web,因此很适合用于托管解决方案. Azure 提供可缩放的计算平台,允许即用即付,而无需投资购买本地硬件 ...

  10. python之mechanize模拟浏览器

    安装 Windows: pip install mechanize Linux:pip install python-mechanize 个人感觉mechanize也只适用于静态网页的抓取,如果是异步 ...