在红宝石中定义一个带有两个点和三个点的范围时有什么区别吗?

时间:2015-03-05 06:37:41

标签: ruby

我在我的rails控制台中试过这个。

2.0.0-p481 :012 > a = 1
 => 1 
2.0.0-p481 :013 > z = 26
 => 26 
2.0.0-p481 :014 > a..z
 => 1..26 
2.0.0-p481 :015 > a...z
 => 1...26 

两者有什么区别?

2 个答案:

答案 0 :(得分:1)

快速检查:

(1..3).to_a
# => [1, 2, 3] 
(1...3).to_a
# => [1, 2]

明显的...不包括最后一个值,即n-1之前的范围。

答案 1 :(得分:0)

是的,带有两个点的版本包含最后一个元素,带有三个点的版本不包括:

(1..4).to_a
#=> [1, 2, 3, 4]

(1...4).to_a
#=> [1, 2, 3]