fl0*_*00r 17
你可以试试这个
a.sort.uniq == b.sort.uniq
Run Code Online (Sandbox Code Playgroud)
要么
(a-b).empty?
Run Code Online (Sandbox Code Playgroud)
如果[1,2,2] != [1,2]
在您的情况下,您可以:
a.group_by{|i| i} == b.group_by{|i| i}
Run Code Online (Sandbox Code Playgroud)
这应该适合您的需要:
(a & b) == b
Run Code Online (Sandbox Code Playgroud)
你可以使用Ruby的Set
类:
>> require 'set' #=> true
>> a = [*1..5] #=> [1, 2, 3, 4, 5]
>> b = [*1..3] #=> [1, 2, 3]
>> a.to_set.superset? b.to_set #=> true
Run Code Online (Sandbox Code Playgroud)
对于小型数组,我通常与fl00r建议的相同:
>> (b-a).empty? #=> true
Run Code Online (Sandbox Code Playgroud)