人生が変わるオンラインサロン!
月3万副業収入が得られる!Mサロン!31日間無料体験!Rubyをさらに学びたい方へ
Rubyを理解して頂くために参考書を執筆致しました!
Rubyの配列、イテレータ、ブロックパラメータなどを学びたい方にオススメの本となっています。演習問題をたくさん用意しているので、実践形式で理解しやすい内容となっています。
下記の画像をクリック!!kindleunlimitedの会員であれば無料で見れます!
⇩初心者向け ⇩中級者向け
RubyでChatGPTAPIを使ってブログ作成を自動化しませんか?
Rubyのmapメソッドの使い方
Rubyのmapメソッドは、配列やハッシュの要素に対してブロック内で指定した処理を適用し、その結果を新しい配列として返すメソッドです。
mapメソッドの基本的な使い方
まずは、mapメソッドの基本的な使い方を見ていきましょう。

例えば、数値の配列に対して、各要素を2倍した新しい配列を作成する場合は次のようになります。
1 2 3 4 |
numbers = [1, 2, 3, 4, 5] doubled_numbers = numbers.map { |n| n * 2 } puts doubled_numbers.inspect |
出力結果
[2, 4, 6, 8, 10]
上記の例では、mapメソッドを使って、numbers配列の各要素を2倍して新しい配列を作成しました。
mapメソッドを使わない場合
同じ処理をmapメソッドを使わずに実装する場合は、次のようになります。
1 2 3 4 5 |
numbers = [1, 2, 3, 4, 5] doubled_numbers = [] numbers.each { |n| doubled_numbers << n * 2 } puts doubled_numbers.inspect |
出力結果
[2, 4, 6, 8, 10]
上記の例では、eachメソッドと新しい配列を作成し、結果を格納する方法で、mapメソッドと同様の処理を実現しています。
mapメソッド適用前と適用後の要素
適用前 | 適用後 |
1 | 2 |
2 | 4 |
3 | 6 |
4 | 8 |
5 | 10 |
上記の表は、mapメソッドを適用する前と適用した後の要素の違いを示しています。
map!メソッドについて
map!メソッドは、mapメソッドと同様に配列の要素に対して処理を適用しますが、新しい配列を返す代わりに元の配列を書き換えます。これは破壊的なメソッドと呼ばれます。

1 2 3 4 |
numbers = [1, 2, 3, 4, 5] numbers.map! { |n| n * 2 } puts numbers.inspect |
出力結果
[2, 4, 6, 8, 10]
上記の例では、map!メソッドを使って、元のnumbers配列の各要素を2倍に書き換えました。
map!メソッドを使用する際は、元の配列が変更されることを意識して使用しましょう。
ポイント
mapメソッドは新しい配列を返すが、map!メソッドは元の配列を書き換える
これで、Rubyのmapメソッドおよびmap!メソッドの使い方について解説しました。繰り返し処理を行う際に、mapメソッドを使うことでコードがシンプルになり、可読性が向上します。ぜひ活用してみてください。
Rubyのselectメソッドの使い方
次に、Rubyのselectメソッドについて解説します。selectメソッドは、配列の要素の中から条件に合うものを選択して、新しい配列を作成します。
selectメソッドの基本的な使い方
以下は、selectメソッドを使用して、配列の要素の中から偶数だけを選択する例です。
1 2 3 4 |
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] even_numbers = numbers.select { |n| n % 2 == 0 } puts even_numbers.inspect |
出力結果
[2, 4, 6, 8, 10]
上記の例では、selectメソッドを使って、配列numbersから偶数だけを取り出して新しい配列even_numbersを作成しました。
select!メソッドについて
select!メソッドは、selectメソッドと同様に配列の要素から条件に合うものを選択しますが、新しい配列を返す代わりに元の配列を書き換えます。これも破壊的なメソッドと呼ばれます。

1 2 3 4 |
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] numbers.select! { |n| n % 2 == 0 } puts numbers.inspect |
出力結果
[2, 4, 6, 8, 10]
上記の例では、select!メソッドを使って、元のnumbers配列から奇数を削除し、偶数だけに書き換えました。
select!メソッドを使用する際は、元の配列が変更されることを意識して使用しましょう。
ポイント
selectメソッドは新しい配列を返すが、select!メソッドは元の配列を書き換える
これで、Rubyのselectメソッドとselect!メソッドの使い方について解説しました。これらのメソッドを使って、配列から条件に合った要素を効率的に取り出すことができます。

以上で、Rubyのmapメソッド、map!メソッド、selectメソッド、およびselect!メソッドの使い方についての解説を終わります。これらのメソッドを理解し、実践的なコードを書くことで、Rubyプログラミングのスキルを向上させましょう。
人生が変わるオンラインサロン!
月3万副業収入が得られる!Mサロン!31日間無料体験!Rubyをさらに学びたい方へ
Rubyを理解して頂くために参考書を執筆致しました!
Rubyの配列、イテレータ、ブロックパラメータなどを学びたい方にオススメの本となっています。演習問題をたくさん用意しているので、実践形式で理解しやすい内容となっています。
下記の画像をクリック!!kindleunlimitedの会員であれば無料で見れます!
⇩初心者向け ⇩中級者向け
RubyでChatGPTAPIを使ってブログ作成を自動化しませんか?