Ruby non_empty?方法

时间:2010-05-20 15:18:18

标签: ruby refactoring

我想使用表达式:

!([1,2,3] & [43,5]).empty?
=> false
!([1,2,3] & [3,5]).empty?
=> true

检查两个数组是否包含至少一个公共值。我想知道是否有更好的方法呢?也许是这样的:

 ([1,2,3] & [3,5]).non_empty?

如何编写non_empty?方法?

3 个答案:

答案 0 :(得分:8)

([1,2,3] & [3,5]).any?

答案 1 :(得分:4)

技术上回答:

class Array
    def non_empty?
        !self.empty?
    end
end

puts [1].non_empty?

虽然.any?似乎已经存在(见JHurra的回答)

答案 2 :(得分:2)

等效查询将询问数组是否为空。等同于!array.blank?的是array.present?

检查http://api.rubyonrails.org/classes/Object.html#M000280