【Ruby】to_hメソッドの使い方を理解しよう

Ruby

to_hメソッドとは、配列をハッシュに変換するメソッドです。

to_hメソッドの構文
1
二次元配列オブジェクト.to_h
irb | to_hメソッドの使用例
1
2
3
human = [["name", "pikawaka"]]
human.to_h
=> {"name"=>"pikawaka"}

to_hメソッドの使い方とは?

この章では、サンプルコードを使ってto_hメソッドについて解説します。

サンプルコードでto_hメソッドを理解する
リンクをコピーしました

[key, value] のペアとして作成した配列に対しto_hメソッドを実行します。
ただしこの時、配列は二次元配列である必要があります。
二次元配列以外の配列に使用するとエラーが発生します。

下記のように記述します。

to_hメソッドの使い方
1
二次元配列オブジェクト.to_h

実際の例を見てみましょう。

irb | to_hメソッドの実行
1
2
3
human = [["name", "pikawaka"]]
human.to_h
=> {"name"=>"pikawaka"}

このように配列からハッシュに変換することができました。
配列の最初のオブジェクトがキーに、2番目のオブジェクトがバリューになります。
2つ以上の場合は下記のように記述します。

irb | to_hメソッドの実行
1
2
3
human = [["name", "pikawaka"], ["age", 25]]
human.to_h
=> {"name"=>"pikawaka", "age"=>25}

キーは文字列でなく、シンボルでも指定ができます。

irb | to_hメソッドの実行
1
2
3
human = [[:name, "pikawaka"], [:age, 25]]
human.to_h
=> {:name=>"pikawaka", :age=>25}

※もっと詳しく知りたい方はこちらの記事を参照してください。

その他の変換系メソッド
リンクをコピーしました

Rubyには他にもオブジェクトの種類を変換するメソッドが用意されています。

メソッド 変換する内容 参照
to_s 文字列型に変換 参照記事
to_i 数値オブジェクトに変換 参照記事
to_f Floatクラス(浮動小数点数)に「変換 参照記事
to_sym シンボルに変換 参照記事
to_a 配列オブジェクトに変換 参照記事
まとめ
  • to_hメソッドは配列をハッシュに変換するメソッドです。
  • メソッドを使う配列は二次元配列である必要があります。
  • キーは文字列でもシンボルでも指定することができます。