Perl的Data::Rmap允許您遞歸評估數據結構列表上的BLOCK(本地設置$ _到每個元素)並返回由這些評估結果組成的列表。 $ _可以用來修改元素。是否有與Perl的Data :: Rmap等價的Ruby?
這是迭代的東西像嵌套散列,或散列等的陣列的層次結構是有用的。
Perl的Data::Rmap允許您遞歸評估數據結構列表上的BLOCK(本地設置$ _到每個元素)並返回由這些評估結果組成的列表。 $ _可以用來修改元素。是否有與Perl的Data :: Rmap等價的Ruby?
這是迭代的東西像嵌套散列,或散列等的陣列的層次結構是有用的。
如果沒有真正查看細節,我不確定您需要Ruby中的模塊。迭代器和塊在那裏做你想做的事情。
Ruby的Enumerable
做你想要的一切,我想。 「...並返回由此類評估結果組成的列表」表示您想要Enumerable#map
。我第一次會是這樣的:
[ {...}, {...}, {...}, ... ].map do |hash|
hash.something
do_other_stuff_with(hash)
hash # important to have as last line b/c of how #map works
end
編輯發佈一個例子或一個例子的鏈接偶然? – dreftymac 2009-01-07 00:12:20
檢查Gaius的答案,它有更多的細節:) – Keltia 2009-01-07 09:19:34