【Ruby3.x】Hash::each_pair()メソッドの使い方
each_pairメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
each_pairメソッドは、レシーバであるHashオブジェクトが保持するすべてのキーと値のペアに対して、指定された処理を順に実行するメソッドです。このメソッドはブロックを受け取り、ハッシュに格納されている各ペアから、そのキーと値をそれぞれ個別の引数としてブロックに渡しながら、ブロック内の処理を繰り返し実行します。
例えば、あるハッシュに{ "name" => "Alice", "age" => 30 }という要素がある場合、まず"name"と"Alice"がブロックに渡され、次に"age"と30が渡される、といった流れで処理が進みます。このように、ハッシュの各要素のキーと値を個別に参照し、それらに対して何らかの操作を行いたい場合に非常に役立ちます。
Ruby 3におけるHashでは、要素の挿入順序が保持されるため、each_pairメソッドもその挿入順に従ってペアを処理します。すべてのペアの処理が完了すると、このメソッドはレシーバである元のHashオブジェクト自身を戻り値として返します。これにより、メソッドチェーンを構築することも可能です。each_pairメソッドは、Hashの内部構造を理解し、そのデータを効率的に活用するための基本的な手段の一つです。
構文(syntax)
1my_hash = { name: "Alice", age: 30, city: "New York" } 2my_hash.each_pair do |key, value| 3 puts "#{key}: #{value}" 4end
引数(parameters)
引数なし
引数はありません
戻り値(return)
Hash または Enumerator
Hashの各キーと値のペアに対してブロックを実行し、そのペアを返します。ブロックが省略された場合は、Hashを列挙するEnumeratorを返します。