array.count
和array.size
之间有什么区别吗?
我在使用array.count
时有时会在生产环境中遇到错误,但在使用array.size
时同样正常。
答案 0 :(得分:25)
从Ruby 1.8.7开始,Array#count
与Array#size
相同。
请注意,Array#count
在低于1.8.7的Ruby版本中不存在,因此如果您在生产中运行Ruby 1.8.6,它将引发NoMethodError
。
另外,请确保您正在谈论数组。例如,在ActiveRecord中,#size
和#count
略有不同。 #size
理解缓存就像计数器缓存一样,而count则不理解。