当我注意到这一点时,我正在玩IRB(Ruby 2.5.1):
irb(main):020:0> h
=> {3=>4, :aaa=>false}
irb(main):021:0> h.count
=> 2
但是,Ruby docs中不存在此方法。
一项快速测试表明,hsh.count
得到的结果与hsh.keys.count
相同,并且Hash.ancestors
包含Enumerable
。
Hash#count到底是什么?
答案 0 :(得分:5)
您似乎已经完成了大部分工作……Enumerable#count
。
从技术上讲,for
在计数密钥,而hsh.keys.count
在计数对(hsh.count
会产生),但是它们是相同的值实际上,因为每对都有唯一的密钥。