デフォルト値を持つハッシュの操作
概要
Rubyを使ったコーディングを学んでいます。私はハッシュについて学んでいますが、このコードが理解できません: count = Hash.new(0)。 0 がデフォルト値であると書かれていますが、irb で実行すると空のハッシュ {} が返されます。 0 がデフォルト値である場合、count ={0=>0} のような値が表示されないのはなぜですか。それとも、ゼロはアキュムレータですが、キーや値には反映されませんか?ありがとう
解決策
存在しないハッシュ内のキーにアクセスしようとした場合、0 がフォールバックになります。
例えば:
count = Hash.new -> count[‘key’] => nil
対
count = Hash.new(0) -> count[‘key’] => 0