配列基礎レベル

次のプログラムを実行すると何が表示されますか?

arr = [1, 2].product([3, 4])
p arr
  • 1[[1, 3], [2, 4]]
  • 2[[1, 3], [1, 4], [2, 3], [2, 4]]
  • 3[1, 2, 3, 4]
  • 4[3, 4]

解説

Array#product は、2つの配列から取り得るすべての組み合わせを配列として返します。[1, 2] の各要素に対して [3, 4] の各要素を組み合わせるため、結果は [[1, 3], [1, 4], [2, 3], [2, 4]] です。位置ごとにペアにしたい場合は product ではなく zip を使います。

問題一覧へ戻る