2017-09-26 68 views
-1

我想在这种方式添加阵列添加一个阵列中的一个元件以第二阵列的许多元素的Ruby

arr1=[1,2,3,4] 
arr2=[4,5,6,7] 

添加应该像

arr1[0]+arr2[0] 
arr1[0]+arr2[1] 
arr1[0]+arr2[2] 

等类似地与其它的第二和ARR1

+0

继续。 ..... – sawa

+0

我知道两个数组的连接,但是dnt知道如何实际添加第二个数组的所有元素的数组中的一个元素 – mashal

+0

@mashal的期望输出是什么? –

回答

2

的其他元件尝试地图的组合两个阵列上:

p [1,2,3,4].map { |e| [4,5,6,7].map { |f| f + e } } 
# => [[5, 6, 7, 8], [6, 7, 8, 9], [7, 8, 9, 10], [8, 9, 10, 11]] 
+0

嘿塞巴斯蒂安你有什么想法如何在C? – mashal

+4

@mashal保持专注,你的问题是关于Ruby,而不是C. – Stefan

1
arr1.product(arr2).map { |a,b| a + b }          
#=> [5, 6, 7, 8, 6, 7, 8, 9, 7, 8, 9, 10, 8, 9, 10, 11] 

使用sum也许如果你有Ruby> 2.4,否则你可以使用Enumerable#inject

arr1.product(arr2).map { |a| a.sum } 

有关详细信息,请参见Array#productArray#sum

相关问题