Ruby の map メソッド

Nurudeen Ibrahim 2022年4月18日
Ruby の map メソッド

map メソッドは、Ruby で最も人気のある列挙可能なメソッドの 1つです。配列を別の配列に変換するために使用されます。

コード例:

numbers = [2, 4, 6]

doubles = numbers.map do |n|
  n * 2
end

puts doubles

出力:

[4, 8, 12]

上記のコードは、numbers 配列をマップし、各要素に 2 を掛けて、新しい doubles 配列を生成します。これが map メソッドの仕組みです。

collect メソッド、map のエイリアスもあり、どちらも同じように機能することに注意してください。collect メソッドを使用して上記のコードを書き直すことで、それを示すことができます。

コード例:

numbers = [2, 4, 6]

doubles = numbers.collect do |n|
  n * 2
end

puts doubles

出力:

[4, 8, 12]

map メソッドは新しい配列を生成しますが、map もあります (つまり、強打のあるマップ)map と同じように機能しますが、元の配列を変更します。

コード例:

numbers = [2, 4, 6]

doubles = numbers.map! do |n|
  n * 2
end

puts doubles
puts numbers

出力:

[4, 8, 12]
[4, 8, 12]

上記の出力を見ると、元の numbers 配列が変更されており、doubles と同じ値になっていることがわかります。

関連記事 - Ruby Map