给定一个哈希,我想得到一个包含所有对的数组。
这应该有效:
hash.select{true}
我找不到一个内置的方法来做到这一点,我觉得很奇怪,因为它看起来像我通常需要的合理操作。有没有更简单的方法来实现这一目标? (好吧,我知道上面的代码已经很简单,但我想知道Ruby是否有更标准的方法来实现这一点。)
答案 0 :(得分:2)
kirti@kirti-Aspire-5733Z:~$ rvm use 1.8.7
Using /home/kirti/.rvm/gems/ruby-1.8.7-p374
kirti@kirti-Aspire-5733Z:~$ irb
1.8.7 :001 > h = {1 => 2}
=> {1=>2}
1.8.7 :002 > h.to_a
=> [[1, 2]]
1.8.7 :003 >
答案 1 :(得分:1)
只需在哈希上使用to_a
方法(读作:to array
):
hash = { :a => 3, :b => 5 }
hash.to_a
#=> [[:a, 3], [:b, 5]]