09/08/19 01:57:45
>>256
「同じkeyが来たときにそのvalueの中にあるハッシュで同じモノがあれば加算して、なければmergeする」
以下の時にA.B.と分けて考えよう。
h1 = hash.new(0)
h1 = h1.merge({"a" => 2, "b" => 3})# h1.merge!({"a" => 2, "b" => 3})でも可
h2 = {"a" => 3, "c" => 8}
A.同じkeyが来たときにそのvalueの中にあるハッシュで同じモノがあれば加算
B.なければmergeする
A.これは、以下のままでよいから特に難しくないね。
h1["a"] += h2["a"]
B.は
h1["c"] += h2["c"]
と等価なんだよね。
p h1["unknown_key"] += 5
を思い出してね。
すると、A.Bの時に場合分けは特に必要なく、
h["unknown_value"] += unknown_value_key
のコードで事足りるよね。