>我有array1
,这是一个哈希数组,array2
是一个整数数组。 array1.size
和array2.size
10
.我想将 array2
中的每个元素添加到 array1
中的相应哈希中。因此,array2[0]
将在 array1[0]
时添加到哈希中。
我像这样编码:
for x in 0..array1.size
array1[x][:array2_value] = array2[x]
end
我觉得有一种干净的方法可以做到这一点。任何帮助将不胜感激。
一种方式:
array1.each_with_index { |h,i| h[:array2_value] = array2[i] }
另一个:
array1.zip(array2).each { |h,v| h[:array2_value] = v }
如果不更改array1
:
array1.map.with_index { |h,i| h[:array2_value] = array2[i] }
array1.zip(array2).map { |h,v| h[:array2_value] = v }
array1.map.with_index{|h, i| h.merge(array2_value: array2[i])}
或
array1.each_with_index{|h, i| h.merge!(array2_value: array2[i])}