(Ruby) How do you check whether a range contains a subset of another range?

后端 未结 10 1475
轻奢々
轻奢々 2021-02-05 11:06

If I have two ranges that overlap:

x = 1..10
y = 5..15

When I say:

puts x.include? y 

the output is:

10条回答
  •  陌清茗
    陌清茗 (楼主)
    2021-02-05 11:34

    Some helpful enumerable methods:

    # x is a 'subset' of y
    x.all?{|n| y.include? n}
    # x and y overlap
    x.any?{|n| y.include? n}
    # x and y do not overlap
    x.none?{|n| y.include? n}
    # x and y overlap one time
    x.one?{|n| y.include? n}
    

提交回复
热议问题