【发布时间】:2017-10-09 22:35:31
【问题描述】:
我有一个将整数映射到数组的哈希。例如
{1 => ["abc"], 2 => ["ccc", "ddd"]}
如何从哈希中获取包含至少 2 个元素的数组的所有键?
【问题讨论】:
-
您可以使用
select或reject。
我有一个将整数映射到数组的哈希。例如
{1 => ["abc"], 2 => ["ccc", "ddd"]}
如何从哈希中获取包含至少 2 个元素的数组的所有键?
【问题讨论】:
select 或reject。
{1 => ["abc"], 2 => ["ccc", "ddd"]}.select{|_, a| a.length > 1}.keys
# => [2]
【讨论】:
这样的吗?
hash.each_key.select { |key| hash[key].count >= 2 }
【讨论】:
另一种可能的解决方案:)
{1 => ["abc"], 2 => ["ccc", "ddd"]}.map { |k, v| k if v.size > 1 }.compact
# => [2]
【讨论】: