我有这个:
[["hello", 1], ["world", 1]]
我想要这个:
{ "hello" => 1, "world" => 1 }
我编写了一些可行的东西,但感觉很愚蠢。这是:
hash = {}
array.each do |element|
hash[element[0]] = element[1]
end
hash
有更好的方法吗?
答案 0 :(得分:1)
是..使用Hash[ [ [key, value], ... ] ] → new_hash
Hash[[["hello", 1], ["world", 1]]] # => => {"hello"=>1, "world"=>1}
如果您使用的是Ruby2.1,请使用Array#to_h
[["hello", 1], ["world", 1]].to_h