如何在Ruby中使用索引进行映射?

最简单的转换方法是什么

[x1,x2,x3,…,xN]

[[x1,2],[x2,3],[x3,4],…,[xN,N+1]]

如果您使用的是ruby 1.8.7或1.9,那么您可以使用这样一个事实:迭代器方法,如each_with_index,当在没有块的情况下调用时,返回一个枚举器对象,您可以调用可枚举方法,如mapon。因此,您可以:

arr.each_with_index.map{| x,i |[x,i+2]}

在1.8.6中,您可以执行以下操作:

需要“枚举器”
arr.enum_for(:带有_索引的每个_).map{x,i |[x,i+2]}

发表评论