I noticed a strange behavior when Range
are used as Array
subscript. (At least it's strange for me.)
a = [1,2,3]
=> [1, 2, 3]
a[3]
=> nil
a[3..-1]
=> []
a[4]
=> nil
a[4..-1]
=> nil
I thought a[3..-1]
returns nil
, but somehow it returns []
. a[-3..-4]
also returns []
.
Could anyone explain why it returns []
, when I use marginal values of range?