我一直在研究Ruby中的數組。特別是在Ruby Programming 1.9書籍中使用a[start, count]
和a[lower_range..upper_range]
處理數組的效果。爲什麼array [2,2] ='data'從數組[]中移除元素?
具體來說,如果我有:
a = [1, 3, 5, 7, 9]
和我做了以下內容:
a[2, 2] = 'cat'
我得到的輸出爲:a => [1, 3, "cat", 9]
而不是我所期待的是[1, 3, "cat", "cat", 9]
編輯:謝謝大家爲你的inpu噸。所有的方法建議工作。我現在知道了。
我更喜歡有人建議Array.new方法,因爲以任意的範圍,像[2,N],我可以簡單地使用,a[2, n] = Array.new(n, "cat")
優秀,由於每個人。
很好的回答,但我要指出的是,使用'Array.new'類似語法,將產生與每一個元素引用數組到同一個對象,所以如果你修改一個索引的元素,它們都會改變。 – 2013-05-10 21:51:18