我有阵列:
async Task Get_User_Detail_Event
有没有简短的检查方法如下?
await Get_User_Detail_Event();
它应该返回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
。
答案 0 :(得分:8)
您可以与数组相交。如果交集非空,则数组具有公共元素:
a = [1,2,3,4]
b = [2,4]
(a & b).any? # true
!(a & b).empty? # => true
这非常有效,因为它使用了一个临时哈希。
答案 1 :(得分:1)
答案 2 :(得分:1)
如果我减去b - a
而a
有一些b
也包含的元素,则新b - a
数组的元素数量较少,因为{{1} }}返回b - a
但b
没有的所有元素。我可以根据原始尺寸检查结果。
a
答案 3 :(得分:0)
您可以使用数组交集:
a = [1,2,3,4]
b = [2,4]
c = [5,6]
它给出了以下结果:
(a & b).any?
# true
(a & c).any?
# false