## org.apache.commons.collections.set
Class MapBackedSet

    java.lang.Object
      org.apache.commons.collections.set.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 13:33:15 +0100 (Thu, 10 Apr 2008) $
Author:
  Stephen Colebourne
See Also:
  Serialized Form

Field Summary
`protected java.lang.Object` `dummyValue` The dummyValue to use
`protected java.util.Map` `map` The map being used as the backing store

Method Summary
`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`

Field Detail

### 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

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.lang.Iterable`
  Specified by:
    `iterator` in interface `java.util.Collection`
  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`

Copyright © 2001-2008 The Apache Software Foundation. All Rights Reserved.