计数相等运算符

时间:2015-12-07 16:06:27

标签: arrays ruby

我有一个数组,想要使用Array#count来计算#3:

[1,2,2,3,3,3,3.0,3.0].count(3) #>5

结果为5而不是3.在文档中,它表示计数使用==表示相等,但我想使用eql?代替==

2 个答案:

答案 0 :(得分:3)

[1,2,2,3,3,3,3.0,3.0].select { |e| e.eql? 3 }
#⇒ [
#  [0] 3,
#  [1] 3,
#  [2] 3
# ]

分别地,

[1,2,2,3,3,3,3.0,3.0].count { |e| e.eql? 3 }
#⇒ 3

将返回一个计数。

答案 1 :(得分:1)

[1,2,2,3,3,3,3.0,3.0].count { |e| e.eql? 3 }
=> 3