Ruby非空?方法
我想使用表达式:Ruby非空?方法,ruby,refactoring,Ruby,Refactoring,我想使用表达式: !([1,2,3] & [43,5]).empty? => false !([1,2,3] & [3,5]).empty? => true 检查两个数组是否至少包含一个公共值。我想知道是否有更好的方法?可能是这样的: ([1,2,3] & [3,5]).non_empty? 如何写非空?方法?技术回答: class Array def non_empty? !self.empty? end end pu
!([1,2,3] & [43,5]).empty?
=> false
!([1,2,3] & [3,5]).empty?
=> true
检查两个数组是否至少包含一个公共值。我想知道是否有更好的方法?可能是这样的:
([1,2,3] & [3,5]).non_empty?
如何写非空?
方法?技术回答:
class Array
def non_empty?
!self.empty?
end
end
puts [1].non_empty?
尽管
.any?
似乎已经存在用于此目的(参见JHurra的回答)一个等价的查询将询问数组是否为空。相当于!数组。空白?
是数组。存在?
检查此操作的原因:将集合的每个元素传递给给定的块。如果块返回的值不是false或nil,则该方法将返回true。如果没有给出块,Ruby会添加一个{| obj | obj}的隐式块(有吗?如果至少有一个集合成员不是false或nil,则返回true。谢谢,这就是我要找的!谢谢,技术上你回答了这个问题,但@JHurrah answer是我要找的。谢谢,但请记住它是在Rails中添加的,不是Ruby。
([1,2,3] & [3,5]).any?