【Ruby初学者】Hashクラスの基本まとめ(自分用メモ)
Rubyの Hash
クラスについて、IRBで確認しながら学んだことを自分用にまとめたものです。
特に「これは何だっけ?」となりやすい member?
, to_a
, update
, clear
の挙動を確認していきます。
member?
でハッシュがキーをもつか判断できる
Hash#member?
は key?
や has_key?
の別名。
h = {a: 1, b: 2}
h.member?(:a) # => true
h.member?(:z) # => false
to_a
でハッシュから配列を生成できる
Hash#to_a
は、ハッシュを[[:key, value], [:key, value]]
の形の配列に変換できる。
h = {a: 1, b: 2}
h.to_a # => [[:a, 1], [:b, 2]]
update
は破壊的メソッドである
Hash#update
はmerge!
の別名で、元のハッシュを直接書き換える(破壊的)。
h = {a: 1}
h.update({b: 2}) # => {:a=>1, :b=>2}
# h は変更されている
clear
の戻り値は空のハッシュ
Hash#clear
はハッシュの中身をすべて消して、空のハッシュ {} を返します。
h = {a: 1}
h.clear # => {}
まとめ
-
member?
でキーが存在するかチェックできる -
to_a
で配列に変換できる -
update
は破壊的(元のハッシュが書き換わる) -
clear
は中身を削除し、空のハッシュを返す
Rubysilverの取得を目指してます。
がんばります。