Set<E> difference(Set<Object> other)

Returns a new set with the elements of this that are not in other.

That is, the returned set contains all the elements of this Set that are not elements of other according to other.contains.

Source

Set<E> difference(Set<Object> other) {
  Set<E> result = new SplayTreeSet<E>(_comparator, _validKey);
  for (E element in this) {
    if (!other.contains(element)) result.add(element);
  }
  return result;
}