jis*_*ssy 1 ruby hash ruby-on-rails-4
我需要一个唯一的哈希值,其值"one"
永远不会重复.
例如,
hash= {"1"=>{"one"=>1,"two"=>2},
"2"=>{"one"=>1,"two"=>3},
"3"=>{"one"=>2,"two"=>3},
"4"=>{"one"=>1,"two"=>2}}
Run Code Online (Sandbox Code Playgroud)
然后结果应该是,
hash= {"1"=>{"one"=>1,"two"=>2},
"3"=>{"one"=>2,"two"=>3}}
Run Code Online (Sandbox Code Playgroud)
(可读)单行:
hash.to_a.uniq {|(_,v)| v['one']}.to_h
# {"1"=>{"one"=>1, "two"=>2}, "3"=>{"one"=>2, "two"=>3}}
Run Code Online (Sandbox Code Playgroud)