Ruby控制语句

控制语句分类

  • 顺序控制: 按照程序编写的顺序,从头到尾执行

  • 条件控制: 如果某条件成立,则执行A,否则执行B

  • 循环控制: 在某条件成立之前,反复执行A

  • 异常控制: 发生某种异常时,执行A

备注

ruby的控制语句其实和 Shell 差不多,但是做了一些更接近英语自然语言的精简,所以使用起来更自然一些。

你把它想象成用英语对话就行了

条件控制

在 Ruby 中 = 已经被用作赋值运算,所以判断是否相等的运算符使用两个=,也就是 ==

if 判断案例:

if then else 条件判断控制案例
if a >= 10
  print "bigger\n"
else
  print "smalle\n"
end

备注

Shell 中使用 fi 来结尾条件控制,有点尬。ruby直接说 end

while循环

while 循环案例
i = 1
while i <= 10
  print i, "\n"
  i = i + 1
end

times固定循环次数

ruby 为固定循环次数的循环提供了 times 方法(语法糖):

times 固定次数循环案例
i = 0
100.times do
  i = i + 1
  print "loop ", i, " times print\n"
end

rubytimes 方法被称为迭代器( iterator )。

此外, ruby 还提供了很多有特色的迭代器,例如 each 方法

迭代器( iterator )标识的是循环( iterate )的容器( -or );类似的,运算符( operator )也是运算( operate )的容器( -or )。总之,迭代器就是指用于执行循环处理的方法。

参考

  • 「Ruby基础教程」