有没有更好的方法来做同样的事情?
objects = []
outer_h.values.each do |inner_h|
inner_h.values.each do |obj|
objects << obj
end
end
我使用Ruby 1.9.2。
答案 0 :(得分:5)
objects = outer_h.values.map(&:values).flatten
将有效:
h = {
1 => { :foo => "bar", :bar => "baz" },
2 => { :foo => "rab", :bar => "zab" },
}
h.values.map(&:values).flatten #=> ["bar", "baz", "rab", "zab"]
答案 1 :(得分:0)
outer_h.flatten怎么样?我认为它可能仅适用于数组。