Допустим, у меня есть массивZip массив массивов в другой массив
arr1 = ["a", "b", "c"]
, и я хочу, чтобы пронестись массив массивов к нему
arr2 = [[1, "foo"], [2, "bar"], [3, "baz"]]
так, что конечный результат
[["a", 1, "foo"], ["b", 2, "bar"], ["c", 3, "baz"]]
Прямо сейчас, что я делаю, arr1.zip(arr2).map!(&:flatten)
, но мне интересно, есть ли лучший способ сделать это?
Первое, что приходит на ум, это 'each_index 'итерация, затем« вставляем »элемент из arr1 в элемент arr2. Если вы сочтете это полезным, я опубликую, но он кажется длиннее, чем у вас сейчас. – onebree
Я не вижу, что случилось с тем, как вы это делаете, но альтернативой может быть «arr2.each_with_index {| a, i | a.unshift (arr1 [i])} '... но на самом деле, ваш лучше. – SteveTurczyn