现有两个 Array:
arr1 = [
{:key => 1, :b => 3},
{:key => 2, :b => 4},
{:key => 3, :b => 4}
]
arr2 = [
{:key => 1, :c => 4},
{:key => 2, :d => 5}
]
,
通过数组里每个 Hash 的:key
去配对,结果保存到 arr1 里,最终想得到:
arr1 = [
{:key => 1, :b => 3, :c => 4},
{:key => 2, :b => 4, :d => 5},
{:key => 3, :b => 4}
]
下面是我的笨方法,求指点:
arr1.map! do |a|
arr2.each do |b|
if a[:key] == b[:key]
a.merge!(b)
break
end
end
a
end