Class MapBackedSet

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Iterable, java.util.Collection, java.util.Set

    public final class MapBackedSet
    extends java.lang.Object
    implements java.util.Set, java.io.Serializable
    Decorates a Map to obtain Set behaviour.

    This class is used to create a Set with the same properties as the key set of any map. Thus, a ReferenceSet can be created by wrapping a ReferenceMap in an instance of this class.

    Most map implementation can be used to create a set by passing in dummy values. Exceptions include BidiMap implementations, as they require unique values.

    Since:
    Commons Collections 3.1
    Version:
    $Revision: 646777 $ $Date: 2008-04-10 14:33:15 +0200 (Thu, 10 Apr 2008) $
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.lang.Object dummyValue
      The dummyValue to use
      protected java.util.Map map
      The map being used as the backing store
      private static long serialVersionUID
      Serialization version
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private MapBackedSet​(java.util.Map map, java.lang.Object dummyValue)
      Constructor that wraps (not copies).
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean add​(java.lang.Object obj)  
      boolean addAll​(java.util.Collection coll)  
      void clear()  
      boolean contains​(java.lang.Object obj)  
      boolean containsAll​(java.util.Collection coll)  
      static java.util.Set decorate​(java.util.Map map)
      Factory method to create a set from a map.
      static java.util.Set decorate​(java.util.Map map, java.lang.Object dummyValue)
      Factory method to create a set from a map.
      boolean equals​(java.lang.Object obj)  
      int hashCode()  
      boolean isEmpty()  
      java.util.Iterator iterator()  
      boolean remove​(java.lang.Object obj)  
      boolean removeAll​(java.util.Collection coll)  
      boolean retainAll​(java.util.Collection coll)  
      int size()  
      java.lang.Object[] toArray()  
      java.lang.Object[] toArray​(java.lang.Object[] array)  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface java.util.Collection

        parallelStream, removeIf, stream, toArray
      • Methods inherited from interface java.lang.Iterable

        forEach
      • Methods inherited from interface java.util.Set

        spliterator
    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        Serialization version
        See Also:
        Constant Field Values
      • map

        protected final java.util.Map map
        The map being used as the backing store
      • dummyValue

        protected final java.lang.Object dummyValue
        The dummyValue to use
    • Constructor Detail

      • MapBackedSet

        private MapBackedSet​(java.util.Map map,
                             java.lang.Object dummyValue)
        Constructor that wraps (not copies).
        Parameters:
        map - the map to decorate, must not be null
        dummyValue - the dummy value to use
        Throws:
        java.lang.IllegalArgumentException - if map is null
    • Method Detail

      • decorate

        public static java.util.Set decorate​(java.util.Map map)
        Factory method to create a set from a map.
        Parameters:
        map - the map to decorate, must not be null
        Throws:
        java.lang.IllegalArgumentException - if set is null
      • decorate

        public static java.util.Set decorate​(java.util.Map map,
                                             java.lang.Object dummyValue)
        Factory method to create a set from a map.
        Parameters:
        map - the map to decorate, must not be null
        dummyValue - the dummy value to use
        Throws:
        java.lang.IllegalArgumentException - if map is null
      • size

        public int size()
        Specified by:
        size in interface java.util.Collection
        Specified by:
        size in interface java.util.Set
      • isEmpty

        public boolean isEmpty()
        Specified by:
        isEmpty in interface java.util.Collection
        Specified by:
        isEmpty in interface java.util.Set
      • iterator

        public java.util.Iterator iterator()
        Specified by:
        iterator in interface java.util.Collection
        Specified by:
        iterator in interface java.lang.Iterable
        Specified by:
        iterator in interface java.util.Set
      • contains

        public boolean contains​(java.lang.Object obj)
        Specified by:
        contains in interface java.util.Collection
        Specified by:
        contains in interface java.util.Set
      • containsAll

        public boolean containsAll​(java.util.Collection coll)
        Specified by:
        containsAll in interface java.util.Collection
        Specified by:
        containsAll in interface java.util.Set
      • add

        public boolean add​(java.lang.Object obj)
        Specified by:
        add in interface java.util.Collection
        Specified by:
        add in interface java.util.Set
      • addAll

        public boolean addAll​(java.util.Collection coll)
        Specified by:
        addAll in interface java.util.Collection
        Specified by:
        addAll in interface java.util.Set
      • remove

        public boolean remove​(java.lang.Object obj)
        Specified by:
        remove in interface java.util.Collection
        Specified by:
        remove in interface java.util.Set
      • removeAll

        public boolean removeAll​(java.util.Collection coll)
        Specified by:
        removeAll in interface java.util.Collection
        Specified by:
        removeAll in interface java.util.Set
      • retainAll

        public boolean retainAll​(java.util.Collection coll)
        Specified by:
        retainAll in interface java.util.Collection
        Specified by:
        retainAll in interface java.util.Set
      • clear

        public void clear()
        Specified by:
        clear in interface java.util.Collection
        Specified by:
        clear in interface java.util.Set
      • toArray

        public java.lang.Object[] toArray()
        Specified by:
        toArray in interface java.util.Collection
        Specified by:
        toArray in interface java.util.Set
      • toArray

        public java.lang.Object[] toArray​(java.lang.Object[] array)
        Specified by:
        toArray in interface java.util.Collection
        Specified by:
        toArray in interface java.util.Set
      • equals

        public boolean equals​(java.lang.Object obj)
        Specified by:
        equals in interface java.util.Collection
        Specified by:
        equals in interface java.util.Set
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface java.util.Collection
        Specified by:
        hashCode in interface java.util.Set
        Overrides:
        hashCode in class java.lang.Object