我有數組:檢查
a = [1,3,4,5]
b = [1,2,3]
是否有檢查如下任何短方法?
a.include? b
它應該返回true
作爲3
是存在的。
我們可以這樣做:
b.each do |bb|
puts true if a.include? bb
end
但這不是遍歷一個大陣列的好方法。或:
c = [2,4]
a.include? b
應該返回true
沒有迭代。
我有數組:檢查
a = [1,3,4,5]
b = [1,2,3]
是否有檢查如下任何短方法?
a.include? b
它應該返回true
作爲3
是存在的。
我們可以這樣做:
b.each do |bb|
puts true if a.include? bb
end
但這不是遍歷一個大陣列的好方法。或:
c = [2,4]
a.include? b
應該返回true
沒有迭代。
你可以交叉數組。如果交集是非空的,該陣列具有共同的元素:
a = [1,2,3,4]
b = [2,4]
(a & b).any? # true
!(a & b).empty? # => true
這是很有效的,因爲它使用一個臨時散罩下。
如果我減去b - a
和a
有一些元素b
有太多,那麼新數組b - a
具有較小數量的元素,因爲b - a
返回所有元素,其中b
具有但a
沒有。我可以根據原始尺寸檢查結果。
a = [1,3,4,5]
b = [1,2,3]
b.size > (b - a).size
# => true
您可以使用數組路口:
a = [1,2,3,4]
b = [2,4]
c = [5,6]
它提供了以下結果:
(a & b).any?
# true
(a & c).any?
# false
你命名''包括高度誤導? – sawa