array = [:peanut, :butter, :and, :jelly]
为什么array[4,0]
返回[]
而array[5,0]
返回nil
?
答案 0 :(得分:4)
当元素的起始索引返回空数组 范围位于数组的末尾。
如果索引(或起始索引)超出范围,则返回nil。
a = [ "a", "b", "c", "d", "e" ]
a[2] + a[0] + a[1] #=> "cab"
a[6] #=> nil
a[1, 2] #=> [ "b", "c" ]
a[1..3] #=> [ "b", "c", "d" ]
a[4..7] #=> [ "e" ]
a[6..10] #=> nil
a[-3, 3] #=> [ "c", "d", "e" ]
# special cases
a[5] #=> nil
a[6, 1] #=> nil
a[5, 1] #=> []
a[5..10] #=> []