合并数组内的数组

pyf*_*l88 1 ruby arrays

我有这个数组:

a = [[1,2,3,4,5],[3,5,6,8,12,45],[3,2,1,5,7,9,10,11],[3,5,6,8,2,1,3,4,6]]
Run Code Online (Sandbox Code Playgroud)

我想合并它的内部数组,使它们成为:

a = [[1,2,3,4,5,3,5,6,8,12,45],[3,2,1,5,7,9,10,11,3,5,6,8,2,1,3,4,6]]
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

Aru*_*hit 5

你需要这样做

 a = [
     [1, 2, 3, 4, 5],
     [3, 5, 6, 8, 12, 45],
     [3, 2, 1, 5, 7, 9, 10, 11],
     [3, 5, 6, 8, 2, 1, 3, 4, 6]
 ]

a.each_slice(2).map(&:flatten)

# => [
#     [1, 2, 3, 4, 5, 3, 5, 6, 8, 12, 45],
#     [3, 2, 1, 5, 7, 9, 10, 11, 3, 5, 6, 8, 2, 1, 3, 4, 6]
# ]
Run Code Online (Sandbox Code Playgroud)

阅读方法 each_slice(n)

迭代每个n元素片的给定块.如果没有给出块,则返回枚举器.