索引是数组结束时的空数组

时间:2015-11-14 09:20:03

标签: ruby

  

负数索引从数组末尾向后计数(-1是   最后一个元素)。对于起始和范围情况,起始索引就是   在一个元素之前。此外,当返回时,返回一个空数组   元素范围的起始索引位于数组的末尾。

     

如果索引(或起始索引)超出范围,则返回nil。

为什么

a = [0,1,2,3,4]
a[4] #=> 4
a[4,0] #=> [] - length is 0, so empty array is returned

a[5] #=> nil - makes sense since it is out of range
a[5,0] #=> [] - why is this empty?
a[6,0] #=> nil - but this is nil?

1 个答案:

答案 0 :(得分:2)

我用{ix}代替逗号。

a = [{ix0}0{ix1}1{ix2}2{ix3}3{ix4}4{ix5}]

a [5,0]表示转到5 {ix5}并取0个元素。那只是一个空数组。

{ix6}不是有效的起始位置,因此为零。