1. ホーム
  2. ルビー

[解決済み】Rubyの "map "メソッドは何をするのですか?

2022-04-03 20:50:44

質問

プログラミングは初めてです。どなたか .map で行うだろう。

params = (0...param_count).map

解決方法は?

その map メソッドは、列挙可能なオブジェクトとブロックを受け取り、各要素に対してブロックを実行し、ブロックから返される各値を出力します(元のオブジェクトは map!) :

[1, 2, 3].map { |n| n * n } #=> [1, 4, 9]

ArrayRange は列挙可能な型です。 map をブロックとした場合、Arrayを返す。 map! は元の配列を変更します。

これはどこで役に立つのか、また map!each ? 以下はその例です。

names = ['danil', 'edmund']

# here we map one array to another, convert each element by some rule
names.map! {|name| name.capitalize } # now names contains ['Danil', 'Edmund']

names.each { |name| puts name + ' is a programmer' } # here we just do something with each element

出力されます。

Danil is a programmer
Edmund is a programmer