今回はRubyのハッシュの使い方を解説します。
ハッシュ
ハッシュとは連想配列とも呼ばれ、複数のオブジェクトを一括で管理するためのオブジェクトです。
配列では1つ1つの要素にオブジェクトが代入されていましたが、ハッシュでは値とキーの2つのオブジェクトが代入されています。
キーを指定することで、それに対応する値を取り出すことができます。
Rubyではハッシュクラスが用意されています。
ハッシュの生成
Rubyでハッシュを生成するには以下のような書き方ができます。
1 |
HashObject = {Key1 => Value1, Key2 => Value2 ,...} |
{}でくくり、カンマで区切ってキーと値を書き込みます。
ハッシュの値の取得
生成したハッシュの値を取得するには以下のような書き方ができます。
1 |
HashObject[Key] |
キーに対応した値を取得できます。
また、ハッシュクラスにはfetchメソッドが用意されています。
fetchメソッドを使った値の取得は以下のような書き方ができます。
1 |
HashObject.fetch(key) |
ここで実際にハッシュの生成、値の取得をしてみましょう。
1 2 3 4 |
test = {"user" => "milkman","food" => "fish","drink" => "milk"} puts(test["user"]) puts(test.fetch("user")) |
実行結果はこのようになります。
1 2 |
milkman milkman |
testというハッシュオブジェクトを生成します。
キーの"user"を指定することで、値:milkmanを取得することができます。
newメソッド
newメソッドを使用するとインスタンスを生成しデフォルトの設定ができます。
newメソッドは空のハッシュを返してくれます。
基本的な書式は以下のようになります。
1 |
HashObject = Hash.new("引数") |
この引数がデフォルトの値となります。
様々なメソッド
上記の例で示したメソッド以外にも便利なメソッドが多々あります。
ハッシュオブジェクトのサイズを返してくれるlengthメソッド、キーを要素として配列を生成してくれるkeysメソッドなど便利なものが多いので是非参考にしてみてください。