2
可能重複:
Why does array.slice behave differently for (length, n)紅寶石公案 - 約陣列 - test_accessing_array_elements陣列[5,0]
在Ruby公案 「about_arrays.rb」,test_accessing_array_elements有兩個相似的啓動/長度slice語句訪問數組的一部分。參考下面的提取。兩者都應該是「超出範圍」,但一個返回一個空數組,另一個返回零。這符合文檔ruby doc的可能結果。爲什麼這樣?
irb(main):221:0> array = [:peanut, :butter, :and, :jelly]
=> [:peanut, :butter, :and, :jelly]
irb(main):222:0> array[4,0]
=> []
irb(main):223:0> array[5,0]
=> nil
irb(main):224:0>
irb(main):224:0> array[4]
=> nil
irb(main):225:0> array[5]
=> nil
irb(main):226:0>
我在本週運行Ruby koans時遇到了這個問題,最後在irc的#ruby上詢問了這個問題。該房間的共識是「錯誤的」或「設計錯誤」,因爲這是值得的。 (該行爲在'Array#slice'文檔中有記錄,儘管對「特殊情況」的描述並不令人鼓舞。) – Telemachus 2010-07-21 10:47:25
Chris是正確的,重複了[why-does-array-slice-behave-different-對於長度N](http://stackoverflow.com/questions/3219229/why-does-array-slice-behave-differently-for-length-n) – Straff 2010-07-21 09:10:04