我有一个哈希数组,我需要一个新数组中的哈希值,这个哈希数组看起来像这样,有几千个哈希值。
array = [{:code=>"404"}, {:code=>"302"}, {:code=>"200"}]
我试着查找这个,但只找到了如何从哈希转换。我该怎么做呢?
iyfamqjs1#
[{:code=>"404"}, {:code=>"302"}, {:code=>"200"}].flat_map(&:values) #⇒ ["404", "302", "200"]
9ceoxa922#
a=[{:code=>"404"}, {:code=>"302"}, {:code=>"200"}] puts a.map{|x|x.values}.flatten.inspect
输出
["404", "302", "200"]
sr4lhrrt3#
arr =[{:code=>"404"}, {:code=>"302"}, {:code=>"200"}] arr.map { |h| h[:code] } #=> ["404", "302", "200"]
或者,如果密钥的名称(现在为:code)将来可能会更改:
:code
arr.map { |h| h.first.last } #=> ["404", "302", "200"]
xlpyo6sf4#
此问题仅标记为ruby。但我认为值得注意的是,当您碰巧使用Ruby on Rails或在Gemfile中包含activesupport gem时,您可能希望使用Enumerable#pluck:
ruby
Gemfile
activesupport
Enumerable#pluck
array = [{:code=>"404"}, {:code=>"302"}, {:code=>"200"}] array.pluck(:code) #=> ["404", "302", "200"]
4条答案
按热度按时间iyfamqjs1#
9ceoxa922#
输出
sr4lhrrt3#
或者,如果密钥的名称(现在为
:code
)将来可能会更改:xlpyo6sf4#
此问题仅标记为
ruby
。但我认为值得注意的是,当您碰巧使用Ruby on Rails或在
Gemfile
中包含activesupport
gem时,您可能希望使用Enumerable#pluck
: