当您在Ruby中迭代时,可以使用each
方法来修改数组。each
方法会返回一个enumerator
对象,该对象可以用于迭代数组中的元素,并可以修改数组。
例如,下面的代码演示了如何使用each
方法来迭代数组中的元素,并修改数组:
arr = ['a', 'b', 'c', 'd', 'e']
arr.each do |item|
puts item
# 修改数组中的元素
arr.push(item + 'x') if item % 2 == 0
end
puts arr
在上面的代码中,我们首先创建了一个包含5个元素的数组arr
。然后,我们使用each
方法迭代数组中的元素,并使用push
方法将每个元素与其对应的值相加并添加到数组中(如果元素是偶数)。
最后,我们使用puts
方法输出修改后的数组。运行代码后,输出结果应该是abcdex
。
需要注意的是,each
方法只会迭代数组中的元素,并不会修改数组本身。因此,如果您想要修改数组本身而不是迭代元素,则应该使用其他方法,例如map
或select
。
领取专属 10元无门槛券
手把手带您无忧上云