tro*_*skn 1 ruby arrays hash functional-programming
我有这样的结构:
{:foo => ['foo1', 'foo2'], :bar => ['bar1']}
Run Code Online (Sandbox Code Playgroud)
我想转变成:
[[:foo, "foo1"], [:foo, "foo2"], [:bar, "bar1"]]
Run Code Online (Sandbox Code Playgroud)
我目前的解决方案势在必行:
result = []
h.each do |k,v|
v.each do |value|
result << [k, value]
end
end
Run Code Online (Sandbox Code Playgroud)
虽然这有效,但我确信有更优雅的方式来写这个,但我无法弄清楚.我想知道面向功能的解决方案是什么样的?