Ruby 初心者スレッド Part 30at TECH
Ruby 初心者スレッド Part 30 - 暇つぶし2ch263:チンパンジー愛ちゃん
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
のコードで事足りるよね。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch