public class IdentityHashSet<T>
extends java.lang.Object
implements java.util.Set<T>
| Modifier and Type | Field and Description | 
|---|---|
| protected java.util.Map<T,T> | mapThe backing map. | 
| Constructor and Description | 
|---|
| IdentityHashSet()Create a new identity hash set. | 
| Modifier and Type | Method and Description | 
|---|---|
| boolean | add(T o)Adds the specified element to this set if it is not already present
 (optional operation). | 
| boolean | addAll(java.util.Collection<? extends T> c)Adds all of the elements in the specified collection to this set if
 they're not already present (optional operation). | 
| void | clear()Removes all of the elements from this set (optional operation). | 
| boolean | contains(java.lang.Object o)Returns 
 | 
| boolean | containsAll(java.util.Collection<?> c)Returns 
 | 
| boolean | equals(java.lang.Object o)Compares the specified object with this set for equality. | 
| int | hashCode()Returns the hash code value for this set. | 
| boolean | isEmpty()Returns 
 | 
| java.util.Iterator<T> | iterator()Returns an iterator over the elements in this set. | 
| boolean | remove(java.lang.Object o)Removes the specified element from this set if it is present (optional
 operation). | 
| boolean | removeAll(java.util.Collection<?> c)Removes from this set all of its elements that are contained in the
 specified collection (optional operation). | 
| boolean | retainAll(java.util.Collection<?> c)Retains only the elements in this set that are contained in the
 specified collection (optional operation). | 
| int | size()Returns the number of elements in this set (its cardinality). | 
| java.lang.Object[] | toArray()Returns an array containing all of the elements in this set. | 
| <E> E[] | toArray(E[] a)Returns an array containing all of the elements in this set; the 
 runtime type of the returned array is that of the specified array. | 
| java.lang.String | toString()Create a string representation. | 
public int size()
size in interface java.util.Collection<T>size in interface java.util.Set<T>public boolean isEmpty()
isEmpty in interface java.util.Collection<T>isEmpty in interface java.util.Set<T>public boolean contains(java.lang.Object o)
(o==null ? e==null :
 o.equals(e)).contains in interface java.util.Collection<T>contains in interface java.util.Set<T>o - element whose presence in this set is to be tested.java.lang.ClassCastException - if the type of the specified element
               is incompatible with this set (optional).java.lang.NullPointerException - if the specified element is null and this
         set does not support null elements (optional).public java.util.Iterator<T> iterator()
public java.lang.Object[] toArray()
toArray in interface java.util.Collection<T>toArray in interface java.util.Set<T>public <E> E[] toArray(E[] a)
toArray in interface java.util.Collection<T>toArray in interface java.util.Set<T>a - the array into which the elements of this set are to
                be stored, if it is big enough; otherwise, a new array of the
                same runtime type is allocated for this purpose.java.lang.ArrayStoreException - the runtime type of a is not a supertype
            of the runtime type of every element in this set.java.lang.NullPointerException - if the specified array is 
public boolean add(T o)
o, to this set if this set contains no element
 e such that (o==null ? e==null :
 o.equals(e)).  If this set already contains the specified
 element, the call leaves this set unchanged and returns 
add in interface java.util.Collection<T>add in interface java.util.Set<T>o - element to be added to this set.java.lang.UnsupportedOperationException - if the 
java.lang.ClassCastException - if the class of the specified element
               prevents it from being added to this set.java.lang.NullPointerException - if the specified element is null and this
         set does not support null elements.java.lang.IllegalArgumentException - if some aspect of the specified element
         prevents it from being added to this set.public boolean remove(java.lang.Object o)
e such that
 (o==null ?  e==null : o.equals(e)), if the set contains
 such an element.  Returns 
remove in interface java.util.Collection<T>remove in interface java.util.Set<T>o - object to be removed from this set, if present.java.lang.ClassCastException - if the type of the specified element
               is incompatible with this set (optional).java.lang.NullPointerException - if the specified element is null and this
         set does not support null elements (optional).java.lang.UnsupportedOperationException - if the 
public boolean containsAll(java.util.Collection<?> c)
containsAll in interface java.util.Collection<T>containsAll in interface java.util.Set<T>c - collection to be checked for containment in this set.java.lang.ClassCastException - if the types of one or more elements
         in the specified collection are incompatible with this
         set (optional).java.lang.NullPointerException - if the specified collection contains one
         or more null elements and this set does not support null
         elements (optional).java.lang.NullPointerException - if the specified collection is
         
contains(Object)public boolean addAll(java.util.Collection<? extends T> c)
addAll in interface java.util.Collection<T>addAll in interface java.util.Set<T>c - collection whose elements are to be added to this set.java.lang.UnsupportedOperationException - if the 
java.lang.ClassCastException - if the class of some element of the
                  specified collection prevents it from being added to this
                  set.java.lang.NullPointerException - if the specified collection contains one
           or more null elements and this set does not support null
           elements, or if the specified collection is 
java.lang.IllegalArgumentException - if some aspect of some element of the
                  specified collection prevents it from being added to this
                  set.add(Object)public boolean retainAll(java.util.Collection<?> c)
retainAll in interface java.util.Collection<T>retainAll in interface java.util.Set<T>c - collection that defines which elements this set will retain.java.lang.UnsupportedOperationException - if the 
java.lang.ClassCastException - if the types of one or more elements in this
            set are incompatible with the specified collection
            (optional).java.lang.NullPointerException - if this set contains a null element and
            the specified collection does not support null elements
            (optional).java.lang.NullPointerException - if the specified collection is
           
remove(Object)public boolean removeAll(java.util.Collection<?> c)
removeAll in interface java.util.Collection<T>removeAll in interface java.util.Set<T>c - collection that defines which elements will be removed from
           this set.java.lang.UnsupportedOperationException - if the 
java.lang.ClassCastException - if the types of one or more elements in this
            set are incompatible with the specified collection
            (optional).java.lang.NullPointerException - if this set contains a null element and
            the specified collection does not support null elements
            (optional).java.lang.NullPointerException - if the specified collection is
           
remove(Object)public void clear()
public boolean equals(java.lang.Object o)
equals in interface java.util.Collection<T>equals in interface java.util.Set<T>equals in class java.lang.Objecto - Object to be compared for equality with this set.public int hashCode()
s1.hashCode()==s2.hashCode() for any two sets
 s1 and s2, as required by the general
 contract of the 
hashCode in interface java.util.Collection<T>hashCode in interface java.util.Set<T>hashCode in class java.lang.ObjectObject.hashCode(), 
Object.equals(Object), 
Set.equals(Object)public java.lang.String toString()
toString in class java.lang.Object