Ruby 循环与迭代器
Ruby 循环与迭代器
- 循环
- 迭代器
- times
- upto
- step
循环
。。。。
迭代器
迭代器本质上可以理解为是循环的一种类型
times
3.times do
print "Ho! "
end
=begin
Ho! Ho! Ho!
=end
上述代码表示我们对当前 block
部分中的内容循环三次。最终,我们打印出了三个 Ho!
upto
0.upto(9) do |x|print x, " "
end
=begin
0 1 2 3 4 5 6 7 8 9
=end
上述代码表示我们将循环变量初始值设置为 0
,每次循环后令其自增 1
,直到值为 9
的时候停止循环。因此,最终得到的结果为 0 1 2 3 4 5 6 7 8 9
。
这里的 do
和 end
之间被称作 block
(区块),表示被循环语句所在的部分,do
后面的 |x|
表示循环变量的名称,这个名称用户可以自定义,比如,我们可以将其改为 i 也可以得到一样的结果。
0.upto(9) do |i|print i, " "
end
=begin
0 1 2 3 4 5 6 7 8 9
=end
同时,我们也可以不进行循环变量名称的设定,直接使用 _1
来表示接收到的第一个循环变量进行输出。
0.upto(9) doprint _1, " "
end
=begin
0 1 2 3 4 5 6 7 8 9
=end
对于含有多个循环变量的循环,可以依次使用 _1
, _2
, _3
来代替第 1
,2
,3
个循环变量。但是,对于超过 1
个循环变量的循环,推荐手动设定循环变量的名称,避免混淆。
step
上面我们介绍了循环变量自增 1 的循环方式,这里我们介绍循环变量每次自增 3 的循环方式。
0.step(12, 3) do |x| print x, " "
end
=begin
0 3 6 9 12
=end
后续,再进行添加,目前先截止到这里。