Ruby 聚合散列数组中特定键的值

Ruby 聚合散列数组中特定键的值,ruby,Ruby,我正试图构建一个来自散列数组的值数组,目前我的代码如下所示: ids = array_of_hashes.inject([]) do |result,instance| result << instance[:id] result end ids=array\u of_hash.inject([])do | result,instance| 结果您可以将其更改为: ids = hash.map { |instance| instance[:id] } 不一定效率更

我正试图构建一个来自散列数组的值数组,目前我的代码如下所示:

ids = array_of_hashes.inject([]) do |result,instance|
    result << instance[:id]
    result
end
ids=array\u of_hash.inject([])do | result,instance|

结果您可以将其更改为:

ids = hash.map { |instance| instance[:id] }
不一定效率更高,但更易于阅读和维护


祝你好运

您可以将其更改为:

ids = hash.map { |instance| instance[:id] }
不一定效率更高,但更易于阅读和维护


祝你好运

有两种简单的方法:

 1. ids = hash.collect{|h| h[:id]} 
 2. ids = hash.map{|h| h[:id]}

现在你会问这两者的区别是什么?有关说明,请参见以下两种简单方法:

 1. ids = hash.collect{|h| h[:id]} 
 2. ids = hash.map{|h| h[:id]}

现在你会问这两者的区别是什么?解释请参见

你的散列数组被称为
散列?不,只是让它更清楚地说明它是什么,这并不是我的代码,只是为了显示我当前拥有的内容而简化的。
散列数组
或者简单地说
散列
散列
有点误导。你的散列数组被称为
散列
?不,只是让它更清楚地说明它是什么,这并不是我的代码只是为了显示我当前拥有的内容而简化的。
散列数组
或者简单地说
散列
hash
有点误导性。我将此项打勾为正确,因为它具有两种方式(即使唯一的区别是一种是另一种的别名),并且有一个信息源链接,但另一个答案仍然正确。我将此项打勾为正确,因为它具有两种方式(即使唯一的区别是一个是另一个的别名)并且有一个信息源链接,但另一个答案仍然是正确的。