📅  最后修改于: 2021-01-08 13:15:22             🧑  作者: Mango
迭代器是面向对象语言中使用的概念。迭代意味着像循环一样多次执行一件事。
循环方法是最简单的迭代器。它们一个接一个地返回集合中的所有元素。数组和哈希值属于集合类别。
Ruby的每个迭代器都从哈希或数组返回所有元素。
句法:
(collection).each do |variable|
code...
end
这里的集合可以是任何数组,范围或哈希。
例:
#!/usr/bin/ruby
(1...5).each do |i|
puts i
end
输出:
循环由次迭代器执行指定的次数。循环将从零开始直到小于指定数字的一。
句法:
x.times do |variable|
code...
end
在这里,我们需要在x处定义数字以迭代循环。
例:
#!/usr/bin/ruby
5.times do |n|
puts n
end
输出:
upto迭代器从x迭代到y。
句法:
x.upto(y) do |variable|
code
end
例:
#!/usr/bin/ruby
1.upto(5) do |n|
puts n
end
输出:
步进迭代器用于跳过范围时进行迭代。
句法:
(controller).step(x) do |variable|
code
end
在此,x是在迭代过程中将跳过的范围。
例:
#!/usr/bin/ruby
(10..50).step(5) do |n|
puts n
end
输出:
each_line迭代器用于迭代字符串的新行。
例:
#!/usr/bin/ruby
"All\nthe\nwords\nare\nprinted\nin\na\nnew\line.".each_line do |line|
puts line
end
输出: