Ruby 循环


Ruby 是一种面向对象的动态语言,同时它还支持多种循环结构,如循环,迭代,枚举等,本文将详细介绍 Ruby 中循环语句的用法。

  1. while循环

当条件为真时,while 循环不断重复执行程序块语句。格式如下:

while conditional [do]
   code
end

其中,conditional为条件,code为需要执行的代码块。如果你想在 while 循环前面放置条件,则在 ‘while’ 关键字前增加关键字 ‘until’。

i = 0
num = 5
while i < num do
   puts("在循环语句中 i = #{i}")
   i +=1
end

上面例子中,将会输出以下结果:

在循环语句中 i = 0
在循环语句中 i = 1
在循环语句中 i = 2
在循环语句中 i = 3
在循环语句中 i = 4
  1. for 循环

for 循环是一种不同于 while 循环的特殊的循环方式,可以通过指定范围或集合来迭代一组元素。格式如下:

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

其中 variable 为一个或多个变量,expression为一个集合对象如数组或范围数字等,code为需要执行的代码块。例子如下:

for i in 0..5
   puts "局部变量的值为 #{i}"
end

输出结果如下:

局部变量的值为 0
局部变量的值为 1
局部变量的值为 2
局部变量的值为 3
局部变量的值为 4
局部变量的值为 5
  1. until 循环

until 循环类似于 while 循环,但是在条件为 false 的时候执行。格式如下:

until conditional [do]
   code
end

例子如下:

$i = 0
$num = 5
until $i > $num do
   puts("在循环语句中 i = #$i")
   $i +=1;
end

输出结果如下:

在循环语句中 i = 0
在循环语句中 i = 1
在循环语句中 i = 2
在循环语句中 i = 3
在循环语句中 i = 4
在循环语句中 i = 5
  1. break 和 next语句

在 Ruby 中,关键字 break 和 next 被用于跳出循环和跳过一次循环。

break 执行后,程序会立即退出循环,在 while,for 和 until 循环中都适用。格式如下:

while true do
   puts "欢迎来到 Ruby 标准库!"
   break
end

输出结果如下:

欢迎来到 Ruby 标准库!

next关键字类似于 continue 关键字,在循环语句中用于跳过当前循环的剩余部分,进行下一次循环。格式如下:

for i in 0..5
   if i < 2 then
      next
   end
   puts "局部变量的值为 #{i}"
end

输出结果如下:

局部变量的值为 2
局部变量的值为 3
局部变量的值为 4
局部变量的值为 5
  1. each 迭代器

each 是 Ruby 经常使用的迭代器,用于对数组、哈希、范围等进行每个元素的迭代。格式如下:

collection.each do |variable|
   code
end

其中 collection 为需要进行迭代的对象,variable为当前元素的变量名,code为需要执行的代码块。例子如下:

(1..5).each do |i|
    puts "局部变量的值为: #{i}"
end

输出结果如下:

局部变量的值为: 1
局部变量的值为: 2
局部变量的值为: 3
局部变量的值为: 4
局部变量的值为: 5

以上就是 Ruby 的循环控制语句的基本用法,希望对你有所帮助。