我如何打开它:
[[3, 18], [5, 20], [7, 22]]
进入这个:
[
{:quantity=>3, :price=>18},
{:quantity=>5, :price=>20},
{:quantity=>7, :price=>22}
]
希望得到一个简单的答案,但我会尽力而为。
使用 Array#map
:
a = [[3, 18], [5, 20], [7, 22]]
a.map { |item| {quantity: item[0], price: item[1]} }
# => [{:quantity=>3, :price=>18},
# {:quantity=>5, :price=>20},
# {:quantity=>7, :price=>22}]
a.map { |q, p| {quantity: q, price: p} }
# => [{:quantity=>3, :price=>18},
# {:quantity=>5, :price=>20},
# {:quantity=>7, :price=>22}]
a.map { |item| Hash[[:quantity, :price].zip(item)] }
# => [{:quantity=>3, :price=>18},
# {:quantity=>5, :price=>20},
# {:quantity=>7, :price=>22}]
我是一名优秀的程序员,十分优秀!