在Ruby中对数组元素进行添加

7

我有这个数组:

a1 = [1,2,3,4]

我想从a1生成这个数组:
a2 = [3, 5, 7]

这个公式是 [a1[0] + a1[1], a1[1] + a1[2], ...]
在 Ruby 中,应该怎么做呢?
1个回答

14

是的,您可以按照以下步骤操作:

a1 = [1,2,3,4]
a2 = a1.each_cons(2).map{ |a| a.inject(:+) } #=> [3, 5, 7] 

7
第二行也可以是a2 = a1.each_cons(2).map{ |a,b| a + b },我觉得这种方式更易读。 - Paul Prestidge

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接