Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】Array::map!()メソッドの使い方

map!メソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

map!メソッドは、RubyのArrayクラスに属し、配列の各要素に対してブロック内の処理を実行し、その戻り値で元の配列自身を置き換える、破壊的なメソッドです。これは、配列が保持する全ての要素を新しい値に変換したい場合に利用されます。例えば、数値の配列の全ての要素を2倍にしたり、文字列の配列の全ての要素を大文字にしたりといった操作を、呼び出し元の配列に対して直接行うことができます。

このメソッド名の末尾に付く感嘆符(!)は、このメソッドが呼び出し元の配列オブジェクトの内容を直接変更する、いわゆる「破壊的」な操作を行うことを示しています。したがって、元の配列を残しておきたい場合は、元の配列を変更しないmap(またはcollect)メソッドを使用してください。map!メソッドは、変更された配列自身を返します。もしブロックを省略して呼び出した場合、map!メソッドはEnumeratorオブジェクトを返します。システムエンジニアを目指す初心者の方は、map!が元の配列を直接書き換えるという重要な特徴を理解しておくことが大切です。

構文(syntax)

1array = [1, 2, 3]
2array.map! { |element| element * 2 }

引数(parameters)

引数なし

引数はありません

戻り値(return)

Arrayまたはnil

Arrayクラスのmap!メソッドは、ブロックで指定された処理を各要素に適用し、元の配列をその結果で置き換えた配列を返します。配列が変更されなかった場合はnilを返します。

関連コンテンツ

関連プログラミング言語