我試圖在Ruby中執行此代碼:爲什麼'每個'迭代器都不通過整個數組?
array=[1,2,3,4,5]
array.each do |x|
puts array.length
puts "Downloading #{array.length} files"
array.pop
end
我:
5
Downloading 5 files
4
Downloading 4 files
3
Downloading 3 files
我不明白爲什麼我只得到三個迭代。我做錯了什麼(除了不使用while
循環)?
迭代時不要改變枚舉值。這個問題在這裏回答了數十萬次。 – mudasobwa
相關問題:[更改.each循環中引用的數組元素的值?](http://stackoverflow.com/q/5646710/2620080) –
如果您提供了有關您需要的解釋,我們可能會爲您提供不同的解決方案。 –