在Ruby中合并数组的惯用方法?

Sha*_*ser 1 ruby loops

鉴于我有两个看起来像这样的数组:

array1 = [
  [1, 2],
  [3, 4],
]

array2 = [:a, :b]
Run Code Online (Sandbox Code Playgroud)

将它们组合成一个新的数组的最佳方法是什么,如下所示:

[
  [1, 2, :a],
  [3, 4, :b],
]
Run Code Online (Sandbox Code Playgroud)

我希望有一种方法可以做到这一点,而无需迭代其中一个数组并使用它的索引从另一个数组中获取元素...是否有更好的红宝石方式?

Lin*_*ios 6

试试这个:

array1.zip(array2).map(&:flatten) #=> [[1, 2, :a], [3, 4, :b]]
Run Code Online (Sandbox Code Playgroud)