如果我使用的每一個do循環填充的陣列,它會留下陣列,因爲它是(在這種情況下,這將是大小爲4的一個零陣列)爲什麼不能用Ruby中的每個do循環填充數組?
array = Array.new(4)
array.each do |i|
i = 5
end
我明白可以初始化一個數組與我想要的值使用array = Array.new(4) {desired value}
,但有些情況下,我在不同的值之間進行選擇,我試圖瞭解每個循環如何正確工作。
我做它目前的方式是填充陣列,使我的理想值
array = Array.new(4)
array.each_with_index do |val, i|
array[i] = 5
end
您可以選擇傳入第二個參數來填充數組,例如:array = Array。新(4,5)'這將達到相同的效果。 – DaniG2k
這是另外一個讓人迷惑的例子,他們堅持認爲Ruby是通過引用的。不,它不是!它是通過價值。如果它是通過引用傳遞的,OP的代碼將起作用。我對此爲何如此引起爭議感到茫然。我們可以通過聲稱Ruby是通過引用來停止混淆人們嗎? –