我有两个像这样的哈希
h1 = {:a=>[:client]}
h2 = {:a=>[:user]}
Run Code Online (Sandbox Code Playgroud)
我希望将它们合并在一起但保留两个哈希值的值:
{:a=>[:user, :client]}
Run Code Online (Sandbox Code Playgroud)
我尝试了合并方法,但它删除了一个值,只保留一个.我在用ruby 2.2
由于您的值已经是数组,因此您可以使用merge块并调用Array#+:
h1.merge(h2) { |key, oldval, newval| oldval + newval }
#=> {:a=>[:client, :user]}
Run Code Online (Sandbox Code Playgroud)