2013-12-17 142 views
-1

简单的问题。我在Rails的,我有一个这样的数组:红宝石阵列到多维数组

['a','b','c','d'] 

,我需要将其转换为一个数组是这样的:

[[0,'a'],[1,'b'],[2,'c'],[3,'d']] 

我觉得对于这种类型的数组有一个名字,但我不记得它是什么,所以我不能谷歌它。帮帮我?

回答

3

each_with_indexmap一个简单的组合,所有你需要:

a.each_with_index.map { |e, i| [ i, e ] } 

each_with_index遍历您的数组索引,然后map到您的数据转换(或地图),以所需的格式。其结果是“数组数组”。 Ruby中没有二维数组,只是数组的数组(除非,我想,你想包括来自标准库的Matrix,但即使它看起来像一个,它也不是一个数组)。