2016-07-24 132 views
1

是否有可能动态地创建以下2D阵列:动态创建2D阵列红宝石

[[1, 1], [1, 2], [2, 1], [2, 2], [3, 1], [3, 2], [4, 1], [4, 2]] 

EG。

(1..4).to_a 
#=> [1, 2, 3, 4] 
(1..2).to_a 
#=> [1, 2] 

结合这个莫名其妙?

回答

0

这听起来有点像家庭作业问题。围绕你想要做的事情背景是很好的。你会花一些时间研究ruby为你提供的不同循环/迭代器。这里有一个方法可以通过使用ruby的iterator方法upto来返回你正在寻找的数组。

def generate_array 
    arr = [] 

    1.upto(4) do |y| 
    1.upto(2) do |x| 
     arr << [y, x] 
    end 
    end 

    arr 
end