将哈希数组转换为数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将哈希数组转换为数组相关的知识,希望对你有一定的参考价值。

我有一个哈希数组,我需要在新数组中使用哈希值。哈希的阵列看起来像这样,其中有几千个。

array = [{:code=>"404"}, {:code=>"302"}, {:code=>"200"}]

我试图查看这个,但只发现了如何从哈希转换。

我该怎么做呢?

答案
a=[{:code=>"404"}, {:code=>"302"}, {:code=>"200"}] 
puts a.map{|x|x.values}.flatten.inspect

产量

["404", "302", "200"]
另一答案
[{:code=>"404"}, {:code=>"302"}, {:code=>"200"}].flat_map(&:values)
#⇒ ["404", "302", "200"]
另一答案
arr =[{:code=>"404"}, {:code=>"302"}, {:code=>"200"}]

arr.map { |h| h[:code] }
  #=> ["404", "302", "200"]

或者,如果密钥的名称(现在:code)将来可能会改变:

arr.map { |h| h.first.last }
  #=> ["404", "302", "200"]

以上是关于将哈希数组转换为数组的主要内容,如果未能解决你的问题,请参考以下文章

如何将哈希值转换为数组

Perl,将数字键哈希转换为数组

将 CSV 文件转换为哈希数组

ruby 将嵌套数组转换为哈希

将数组转换为 IEnumerable<T>

如何将 ActiveRecord 结果转换为哈希数组