0

好的,所以我有这个数组

 array
 => [1620, 3093] 

我有一个整数

 num
 => 1620 

有没有一种简单的方法来查看数组中是否有另一个数字不是num

所以例如

数组中是否还有另一个不匹配的数字num。所以对于上面的例子我会返回 true 但如果数组是[1620, 1620]那么我会返回 false

4

4 回答 4

6
arr.any?{|x| x != num }

以上应该可以正常工作,可读且高效!

于 2012-07-26T02:56:04.027 回答
2
array.select{|array_num| array_num != num}.length > 0

编辑:甚至更清洁:

(array - [num]).empty?
于 2012-07-26T02:44:12.373 回答
2
array.reject{ |a| a == num }.size > 0
于 2012-07-26T02:44:51.327 回答
1

用分隔符连接排序后的数组,并查找是否有 2 个相邻数字匹配。

array.sort.join(",").include?("#{num},#{num}")

于 2012-07-26T05:29:34.277 回答