2010-02-10 59 views
5

所有的數組檢索特定的散列鍵值,從哈希

我想知道是否有人知道比一個更好的彭定康:

array_of_hashes.map { |hash_from_array| hash_from_array[:key] } 

從數組中檢索值的數組與特定鍵包含該密鑰的哈希。

+2

對我來說看起來不錯,雖然hash_from_array變量的命名有些過度。 「h」可能會這樣做。 – klochner 2010-02-10 17:33:16

+0

呵呵,我不得不提高這個例子的可讀性。 :) – 2010-02-10 19:14:02

+1

一個非常直接的解決方案 - 我喜歡它 – 2010-02-11 15:58:48

回答

1

從Ruby代碼的角度來看,map非常優雅和直接。從算法的角度來看待(解決計算機科學標籤),似乎解決這個問題的方法不可能比整個陣列一次更好(即這裏是一個map),所以它會花費太多時間來處理陣列中的每個散列。

@Vlad:壓縮返回的數組取決於數組將做什麼,對吧? :-)