如何使用数组和哈希改进我的 Ruby 实践



>我有array1,这是一个哈希数组,array2是一个整数数组。 array1.sizearray2.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])}

最新更新