2017-04-25 59 views
0

我有一个数字数组:返回数字数组是小于x

arr = [1,2,3,87,99,66,44,3,5] 

我想从中选择那些小于3元素,并计数。我怎样才能返回一个数组arr小于3[1,2])?同样,我想要的数字小于50[1,2,3,3,5,44]

我以为我可以使用arr.min(3)arr.any? {|a| a < 3},结果不是我想要的。

+1

使用选择方法。 arr.select {| a | a <3} –

+2

查看'Array'和'Enumerable'中的方法。如果你想**选择**元素,你能猜出你可以使用哪一个?如果你想**数**元素,你能猜出你可以使用哪种方法吗? –

+0

谢谢! – Sylar

回答

2

你的问题是一个XY问题。

你问什么:

arr.select{|e| e < 3} # => [1, 2] 

你需要做什么:在阵列上

arr.count{|e| e < 3} # => 2