Class Sets.SetView<E>

  • All Implemented Interfaces:
    Iterable<E>, Collection<E>, Set<E>
    Enclosing class:
    Sets

    public abstract static class Sets.SetView<E>
    extends AbstractSet<E>
    An unmodifiable view of a set which may be backed by other sets; this view will change as the backing sets do. Contains methods to copy the data into a new set which will then remain stable. There is usually no reason to retain a reference of type SetView; typically, you either use it as a plain Set, or immediately invoke immutableCopy() or copyInto(S) and forget the SetView itself.
    Since:
    2.0 (imported from Google Collections Library)
    • Method Detail

      • immutableCopy

        public ImmutableSet<E> immutableCopy()
        Returns an immutable copy of the current contents of this set view. Does not support null elements.

        Warning: this may have unexpected results if a backing set of this view uses a nonstandard notion of equivalence, for example if it is a TreeSet using a comparator that is inconsistent with Object.equals(Object).

      • copyInto

        public <S extends Set<E>> S copyInto​(S set)
        Copies the current contents of this set view into an existing set. This method has equivalent behavior to set.addAll(this), assuming that all the sets involved are based on the same notion of equivalence.
        Returns:
        a reference to set, for convenience