我重温了 Ruby on Rails,玩了玩公案。我不明白为什么array[4,0]
,所以array[4,100]
返回了[]
nil
def test_slicing_arrays
array = [:peanut, :butter, :and, :jelly]
assert_equal [:peanut], array[0,1]
assert_equal [:peanut, :butter], array[0,2]
assert_equal [:and, :jelly], array[2,2]
assert_equal [:and, :jelly], array[2,20]
assert_equal [], array[4,0]
assert_equal [], array[4,100]
assert_equal nil, array[5,0]
end
这是根据定义的。摘自 的文档
Array#[]
:给出范围时同样适用:
例子: