1
我有兩個數組:陣列中的每個元素注入到不同的陣列
array1: [[1, 2], [2, 3]]
array2: ["a", "b", "c"]
我想這兩個結合起來,得到如下結果:
[[1, 2, "a"], [1, 2, "b"], [1, 2, "c"], [2, 3, "a"], [2, 3, "b"], [2, 3, "c"]]
我有兩個數組:陣列中的每個元素注入到不同的陣列
array1: [[1, 2], [2, 3]]
array2: ["a", "b", "c"]
我想這兩個結合起來,得到如下結果:
[[1, 2, "a"], [1, 2, "b"], [1, 2, "c"], [2, 3, "a"], [2, 3, "b"], [2, 3, "c"]]
您可以使用Array#product:
array1.product(array2).map &:flatten
#=> [[1, 2, "a"], [1, 2, "b"], [1, 2, "c"], [2, 3, "a"], [2, 3, "b"], [2, 3, "c"]]
Array#product是專爲這一點,但是這是一個另類:
array2.flat_map { |e| array1.map { |arr| arr+[e] } }