【发布时间】:2012-04-17 19:58:01
【问题描述】:
Ruby 哈希是否有类似reject! 的方法,它返回匹配项并在哈希中只留下不匹配项?例如:
planets = {'Mars' => 2, 'Jupiter' => 63, 'Saturn' => 47}
few_moons = planets.some_method! do |planet, moon_count|
moon_count < 50
end
few_moons #=> {'Mars' => 2, 'Saturn' => 47}
planets #=> {'Jupiter' => 63}
reject! 返回原始哈希,减去被拒绝的项目。 partition 很接近,但它返回元组数组,而不是哈希,并且不会修改原始哈希。
我在文档中没有看到类似的内容,我想在自己动手之前问问周围的情况。
【问题讨论】:
-
我认为
partition是最接近的,并且没有太多工作可以打包以满足您的需求。