ハッシュについて
Rubyのハッシュについて学習していきます。
ハッシュはデータのまとまりです。
配列もデータのまとまりでしたが、配列はある箱に要素を0から順に格納していました。
ハッシュは添字ではなく、名前と値をセットにして箱に格納します。
名前と値のセットのことを要素と呼びます。
実際にコーディングした方が理解しやすいと思いますので、コードを書いていきましょう。
目次
- ハッシュ操作
1.1 宣言
1.2 出力
1.3 追加
1.4 更新
1.5 削除
1. ハッシュ操作
ハッシュは名前と値のセットです。
一般的にはキー(key)とバリュー(value)のセットと言われています。
1.1 宣言
ハッシュの宣言をしていきます。
sample = {} # 中身が空のハッシュを作成
sample2 = {fruit: 'apple', sports: 'soccer'}
sample3 = {:fruit => 'apple', :number => 3}
上記のようにハッシュの初期化をすることが可能です。
キーには文字列でもハッシュでもどちらでも指定することができます。
1.2 出力
sample = {fruit: "apple", sports: "soccer"}
sample2 = {:fruit => "apple", :number => 3}
sample3 = {"fruit" => "apple", "number" => 3}
puts sample
# {:fruit=>"apple", :sports=>"soccer"}
puts sample2
# {:fruit => "apple", :number=>3}
puts sample3
# {"fruit"=>"apple", "number"=>3}
そのままハッシュを出力しました。
次にキーに対応する値のみ出力してみます。
sample = {fruit: "apple", sports: "soccer"}
sample2 = {:fruit => "apple", :number => 3}
sample3 = {"fruit" => "apple", "number" => 3}
puts sample[:fruit]
# apple
puts sample2[:number]
# 3
puts sample3["fruit"]
# apple
このようにして、あるキーの値だけを取り出すことができました。
1.3 追加
sample = {"fruit" => "apple", "number" => 3}
sample["food"] = "rice"
puts sample
# {"fruit"=>"apple", "number"=>3, "food"=>"rice"}
sample["food"] = "rice"
のようにハッシュ名[キー]にバリューを代入することで追加することができます。
1.4 更新
sample = {"fruit" => "apple", "number" => 3, "food" => "rice"}
sample["fruit"] = "lemon"
puts sample
# {"fruit"=>"lemon", "number"=>3, "food"=>"rice"}
sample["fruit"] = "lemon"
のようにすでに格納されている文字列をキーに指定することでvalueの更新をすることができます。
1.5 削除
削除にはdeleteメソッドを使用します。
sample = {"fruit" => "lemon", "number" => 3, "food" => "rice"}
sample.delete("fruit")
puts sample
# {"number"=>3, "food"=>"rice"}
sample.delete("fruit")
でdeleteメソッドに指定したキーに一致する要素を削除できます。
ここではハッシュの基礎文法を学びました。