Skip to content

Preview Ruby 4.1 is a preview. It can change before the final release. Switch to Ruby 4.0 →

instance method

Set#difference

(::_Each[A]) -> self
difference(p1)

Alias of #-

Returns a new set containing the difference of self and argument enumerable; that is, containing all elements in self that are not in enumerable.

Example
set = Set[*(0..6), *%w[ a b c]] # => Set[0, 1, 2, 3, 4, 5, 6, "a", "b", "c"]
set - ['b', 6, 4, 1]            # => Set[0, 2, 3, 5, "a", "c"]
set - ['d', 7, 9]               # => Set[0, 1, 2, 3, 4, 5, 6, "a", "b", "c"]

Related: see Methods for Set Operations.

See also #- #delete_if #disjoint? #delete? also in 4.0 · 3.4 · 3.3 · 3.2 · 3.1 · 3.0