How to map/collect with index in Ruby?
If you’re using ruby 1.8.7 or 1.9, you can use the fact that iterator methods like each_with_index, when called without a block, return an Enumerator object, which you can call Enumerable methods like map on. So you can do: arr.each_with_index.map { |x,i| [x, i+2] } In 1.8.6 you can do: require ‘enumerator’ arr.enum_for(:each_with_index).map { |x,i| … Read more