开发者社区 问答 正文

如何在红宝石中按哈希值在哈希数组中搜索?

我有一系列哈希,@ fathers。

a_father = { "father" => "Bob", "age" => 40 } @fathers << a_father a_father = { "father" => "David", "age" => 32 } @fathers << a_father a_father = { "father" => "Batman", "age" => 50 } @fathers << a_father 我如何搜索该数组并返回一个哈希数组,对于该数组,块返回true?

例如:

@fathers.some_method("age" > 35) #=> array containing the hashes of bob and batman 谢谢。

展开
收起
保持可爱mmm 2020-01-16 15:48:11 394 分享 版权
1 条回答
写回答
取消 提交回答
  • 您正在寻找Enumerable#select(也称为find_all):

    @fathers.select {|father| father["age"] > 35 }

    => [ { "age" => 40, "father" => "Bob" },

    { "age" => 50, "father" => "Batman" } ]

    根据文档,它“返回一个数组,该数组包含[blockable @fathers不是false 的[可枚举,在这种情况下] 所有元素。” 问题来源于stack overflow

    2020-01-16 15:48:25
    赞同 展开评论
问答地址: