开发者社区> 问答> 正文

在Ruby中迭代数组时如何修改数组?

我只是在向Ruby学习道歉,如果这不是这里的新手,但是我无法从镐本书中解决这个问题(可能只是不够仔细地阅读)。无论如何,如果我有一个像这样的数组:

arr = [1,2,3,4,5] ...而我想说的是,将数组中的每个值乘以3,我得出以下结论:

arr.each {|item| item *= 3} ...不会让我得到我想要的(我明白为什么,我没有修改数组本身)。

我没有得到的是如何在迭代器之后从代码块内部修改原始数组。我敢肯定这很容易。 问题来源于stack overflow

展开
收起
保持可爱mmm 2020-02-08 14:24:57 533 0
1 条回答
写回答
取消 提交回答
  • 用于map从旧阵列创建新阵列:

    arr2 = arr.map {|item| item * 3} 使用map!修改数组到位:

    arr.map! {|item| item * 3}

    2020-02-08 14:25:08
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载