在散列中查找任何大于特定值的值

时间:2012-09-26 11:56:11

标签: ruby

假设我有这个哈希

{ 1 => 4 , 2 => 3 , 4 => 1}

现在我想创建一个循环,我可以找到任何大于3的值。

我知道hash.values?3我可以发现这些对的值为3。 但是我怎样才能找到所有大于等于3的值。

鲁洛夫

编辑1: 我尝试在Ruby中使这个伪代码工作。

while there are sets of 3 ones:
  remove the set from the hash (h[1] -= 3)
  sum 1000 to the score
end

1 个答案:

答案 0 :(得分:10)

使用#select方法:

{a: 1, b: 2, c: 3}.select{|k,v| v > 1}