您将如何根据密钥删除重复项?
values = [{"a"=>"1"}, {"a"=>"2"}, {"b"=>"1"}, {"a"=>"4"}]
Run Code Online (Sandbox Code Playgroud)
如何忽略该值并uniq基于键运行以便返回:
[{'a' => '1'}, {'b' => '1'}]
Run Code Online (Sandbox Code Playgroud)
假设您不关心哪个值被破坏,只需将它们运行到散列(它具有唯一键,因此可能是这种情况下的正确集合类):
h = {}
values.each{|i|i.each{|k,v|h[k] = v}}
puts h # => {"a"=>"4", "b"=>"1"}
Run Code Online (Sandbox Code Playgroud)
...或者如果你想要每个键的第一个:
h = {}
values.each{|i|i.each{|k,v|h[k] = v unless h[k]}}
Run Code Online (Sandbox Code Playgroud)
如果你想回到一个数组:
h.each{|k,v|a << {k=>v}}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2903 次 |
| 最近记录: |