ruby - 在 "each"循环中覆盖数组元素

标签 ruby overriding each

a = [1, 2, 3]
a.each do |x| x+=10 end

在这个操作之后数组 a 仍然是 [1, 2, 3]。如何将其转换为[11, 12, 13]

最佳答案

使用 collect! 方法:

a = [1, 2, 3]
a.collect!{ |x| x + 10 }

关于ruby - 在 "each"循环中覆盖数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5938431/

相关文章:

javascript - jquery - 根据单击的过滤器选项和容器元素值中的匹配值过滤元素

ruby-on-rails - 我可以在做种时将我的所有产品更新给特定用户吗?

c++ - 在构造函数中调用虚函数

python - 如何覆盖 Python 中的函数调用?

jquery 选择 float 子项的每个 "row"

javascript - 在ajax下使用每个循环时出错

ruby - 如何使用 Sequel ORM 以随机顺序从 SQLite 获取记录?

ios - Xcode 在 Ruby 错误编码中运行阶段脚本

ruby-on-rails - rake 分贝 :seed fails with 'don' t know how to build task db. 种子'

java - 覆盖注释和 JDK 1.5