J'apprends juste Ruby alors excuses si c'est trop novice pour ici, mais je ne peux pas travailler cela à partir du livre pioche (probablement juste ne pas lire assez soigneusement). Quoi qu'il en soit, si j'ai un tableau comme ceci:Comment est-ce que je peux modifier un tableau pendant que je l'itère sur Ruby?
arr = [1,2,3,4,5]
... et je veux, par exemple, il faut multiplier chaque valeur dans le tableau par 3, j'ai travaillé que faire ce qui suit:
arr.each {|item| item *= 3}
... ne m'aura pas ce que je veux (et je comprends pourquoi, je ne modifie pas le tableau lui-même). Ce que je ne comprends pas, c'est comment modifier le tableau d'origine depuis l'intérieur du bloc de code après l'itérateur. Je suis sûr que c'est très facile.
Si vous avez vraiment besoin de modifier chaque élément, l'utilisation de la carte serait certainement plus élégante, à mon avis. – fresskoma
Et si vous voulez modifier le tableau lui-même, utilisez map! –