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

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

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

作成日: 更新日:

基本的な使い方

to_hメソッドは、Arrayクラスに属し、レシーバである配列をハッシュ(Hashオブジェクト)に変換するメソッドです。このメソッドは、リスト形式のデータをキーと値のペアとして扱いたい場合に非常に役立ちます。

基本的な使い方として、配列の各要素がさらに2つの要素からなる配列(例えば [[キー1, 値1], [キー2, 値2]] のような形式)である場合、to_hメソッドは内側の配列の最初の要素をハッシュのキーとして、2番目の要素をハッシュの値として使用し、新しいハッシュを生成して返します。例えば、[[ "名前", "太郎" ], [ "年齢", 25 ]] という配列に対してto_hを呼び出すと、{ "名前" => "太郎", "年齢" => 25 } というハッシュが得られます。

また、to_hメソッドはブロックを引数として受け取ることも可能です。ブロックが与えられた場合、配列の各要素に対してそのブロックを実行します。ブロックは、その要素からキーと値のペアを構成する2つの要素を持つ配列を返す必要があります。to_hメソッドは、ブロックが返した2要素の配列を基にハッシュを構築します。これにより、元の配列の要素の形式が直接ハッシュに適さない場合でも、柔軟に変換ルールを定義し、目的のハッシュを作成できます。

いずれの場合も、to_hメソッドは新しいハッシュオブジェクトを生成して返し、元の配列は変更されません。もし、キーと値のペアを構成するはずの要素が2つの要素からなっていない場合や、ブロックの戻り値が2要素の配列でない場合は、ArgumentErrorが発生することがありますのでご注意ください。このメソッドを使うことで、配列のデータを連想配列として効率的に管理できるようになります。

構文(syntax)

1[[:key1, :value1], [:key2, :value2]].to_h

引数(parameters)

引数なし

引数はありません

戻り値(return)

Hash

配列の要素をキーと値のペアとして、新しいHashオブジェクトを生成して返します。

関連コンテンツ

関連プログラミング言語