nbr_rows = 5
["Row: "].product((1..nbr_rows).to_a).map(&:join)
#["Row: 1", "Row: 2", "Row: 3", "Row: 4", "Row: 5"]
Шаги следующие.
a = (1..nbr_rows).to_a
#=> [1, 2, 3, 4, 5]
b = ["Row: "].product(a)
#=> [["Row: ", 1], ["Row: ", 2], ["Row: ", 3], ["Row: ", 4], ["Row: ", 5]]
b.map(&:join)
#=> ["Row: 1", "Row: 2", "Row: 3", "Row: 4", "Row: 5"]
См. Массив # product и Массив # join . Обратите внимание, что join
преобразует элементы a
(целые числа) в строки.
Это просто другой способ сделать это, используя часто пропускаемый метод Array#product
. На практике я предпочитаю решение @ Константина, так как думаю, что оно читается лучше.