The map Method in Ruby
Nurudeen Ibrahim
Apr 18, 2022
The map
method is one of Ruby’s most popular enumerable methods. It’s used to transform an array into another one.
Example Codes:
numbers = [2, 4, 6]
doubles = numbers.map do |n|
n * 2
end
puts doubles
Output:
[4, 8, 12]
The above code maps through the numbers
array, multiply each element by two, and produce a new doubles
array. This is how the map
method works.
Note that there is also a collect
method, an alias to map
, and both work similarly. We can show that by rewriting the above code using the collect
method.
Example Codes:
numbers = [2, 4, 6]
doubles = numbers.collect do |n|
n * 2
end
puts doubles
Output:
[4, 8, 12]
Although the map
method produces a new array, there’s also a map!
which works the same way as map
but also mutates the original array.
Example Codes:
numbers = [2, 4, 6]
doubles = numbers.map! do |n|
n * 2
end
puts doubles
puts numbers
Output:
[4, 8, 12]
[4, 8, 12]
Looking at the output above, you would notice that the original numbers
array has been mutated and now has the same value as doubles
.