for i in [0..4] do
puts i + 1
end
0..4:范围(无方法错误(的未定义方法"+">
为什么它不将范围中的每个数字视为循环中的固定数字?
[0..4]
实际上是具有一个范围元素的数组,与[(0..4)]
相同。您需要将其更改为 (0..4)
.
改为写:
for i in 0..4 do
否则,您没有范围,您有一个包含 1 范围的数组。
有不同的方法可以实现目标:
0.upto(4) { |i|
puts i
}
0.step(4, 1) { |i|
puts i
}
5.times { |i| # 5 for inclusive
puts i
}
for i in 0..4
puts i
end
一切都将输出:
# ⇒ 0
# ⇒ 1
# ⇒ 2
# ⇒ 3
# ⇒ 4
希望对您有所帮助。