arrays - 如何返回散列内数组内的所有偶数?

标签 arrays ruby hash

我得到了以下数据结构:

users = {
  "Jonathan" => {
    :twitter => "tronathan",
    :favorite_numbers => [12, 42, 75],
  },
  "Erik" => {
    :twitter => "sferik",
    :favorite_numbers => [8, 12, 24],
  },
  "Anil" => {
    :twitter => "bridgpal",
    :favorite_numbers => [12, 14, 85],
  },
}

我需要返回 Anils 最喜欢的所有偶数数字。 这是我到目前为止所拥有的:

users["Anil"][:favorite_numbers].each do |evennum|
    if evennum.even?
        puts evennum
    end
end

最佳答案

你可以做这样的事情

anil_favorite_even_numbers = users['Anil'][:favorite_numbers].select(&:even?)

这理所当然地认为用户 Anil 存在并且其中也有 favourite_numbers 并且这是一个数组。否则我们需要一些额外的工作。

关于arrays - 如何返回散列内数组内的所有偶数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71015227/

相关文章:

Ruby "defined?"运算符工作错误?

java - 寻找长整型数组的哈希函数

ruby - 返回两个元素 : Array vs. 结构

c - 将两个不同的动态分配数组传递给 C 中的函数

c - 将结构体数组从 C 传递到 Golang

c# - 我想在整数数组的连续子集中找到公共(public)数字的最大频率

ruby-on-rails - 如何将单个列的值放入数组中

ruby - 使用 `Hash#fetch` 优于 `Hash#[]` 的好处

algorithm - 如何将 99,999 位唯一表示为字节、字或双字

javascript - 如果键不存在,如何在关联的 JavaScript 数组中获取最近的键索引?