..和...之間的區別在ruby for循環中。..和...之間的區別紅寶石
for num in 1..5
puts num
end
VS
for num in 1...5
puts num
end
如何是不同的兩個循環。
..和...之間的區別在ruby for循環中。..和...之間的區別紅寶石
for num in 1..5
puts num
end
VS
for num in 1...5
puts num
end
如何是不同的兩個循環。
在紅寶石1...5
給你一個範圍不包括5
而1..5
給你一個範圍內,其不包括5
如:
>> (1..5).to_a
[
[0] 1,
[1] 2,
[2] 3,
[3] 4,
[4] 5
]
>> (1...5).to_a
[
[0] 1,
[1] 2,
[2] 3,
[3] 4
]
的三個點表示該端終止之前停止, 兩個點表示它包括終止子。
SRC:http://strugglingwithruby.blogspot.pt/2008/11/loops.html
1...5
- >爲1〜4
1..5
- > 1-5
另外,在Ruby的[flip-flop operator]中使用兩點和三點有很大的區別(https://blog.newrelic.com/2015/02/24/weird-ruby-part-3-fun-觸發器-的Phenom /)。 :-) –
所不同的是包容性和不包括的範圍之間。
即:
(1..5).to_a
# => [1, 2, 3, 4, 5]
(1...5).to_a
# => [1, 2, 3, 4]
出於這個原因,你的循環將有不同數量的週期。
閱讀手冊。 – sawa