Package java.util

Class HashSet<E>

All Implemented Interfaces:
Serializable, Cloneable, Iterable<E>, Collection<E>, Set<E>
Direct Known Subclasses:
LinkedHashSet

public class HashSet<E>
extends AbstractSet<E>
implements Set<E>, Cloneable, Serializable
HashSet is an implementation of a Set. All optional operations (adding and removing) are supported. The elements can be any objects.
See Also:
Serialized Form
  • Constructor Details

    • HashSet

      public HashSet()
      Constructs a new empty instance of HashSet.
    • HashSet

      public HashSet​(int capacity)
      Constructs a new instance of HashSet with the specified capacity.
      Parameters:
      capacity - the initial capacity of this HashSet.
    • HashSet

      public HashSet​(int capacity, float loadFactor)
      Constructs a new instance of HashSet with the specified capacity and load factor.
      Parameters:
      capacity - the initial capacity.
      loadFactor - the initial load factor.
    • HashSet

      public HashSet​(Collection<? extends E> collection)
      Constructs a new instance of HashSet containing the unique elements in the specified collection.
      Parameters:
      collection - the collection of elements to add.
  • Method Details

    • add

      public boolean add​(E object)
      Adds the specified object to this HashSet if not already present.
      Specified by:
      add in interface Collection<E>
      Specified by:
      add in interface Set<E>
      Overrides:
      add in class AbstractCollection<E>
      Parameters:
      object - the object to add.
      Returns:
      true when this HashSet did not already contain the object, false otherwise
    • clear

      public void clear()
      Removes all elements from this HashSet, leaving it empty.
      Specified by:
      clear in interface Collection<E>
      Specified by:
      clear in interface Set<E>
      Overrides:
      clear in class AbstractCollection<E>
      See Also:
      isEmpty(), size()
    • clone

      public Object clone()
      Returns a new HashSet with the same elements and size as this HashSet.
      Overrides:
      clone in class Object
      Returns:
      a shallow copy of this HashSet.
      See Also:
      Cloneable
    • contains

      public boolean contains​(Object object)
      Searches this HashSet for the specified object.
      Specified by:
      contains in interface Collection<E>
      Specified by:
      contains in interface Set<E>
      Overrides:
      contains in class AbstractCollection<E>
      Parameters:
      object - the object to search for.
      Returns:
      true if object is an element of this HashSet, false otherwise.
    • isEmpty

      public boolean isEmpty()
      Returns true if this HashSet has no elements, false otherwise.
      Specified by:
      isEmpty in interface Collection<E>
      Specified by:
      isEmpty in interface Set<E>
      Overrides:
      isEmpty in class AbstractCollection<E>
      Returns:
      true if this HashSet has no elements, false otherwise.
      See Also:
      size()
    • iterator

      public Iterator<E> iterator()
      Returns an Iterator on the elements of this HashSet.
      Specified by:
      iterator in interface Collection<E>
      Specified by:
      iterator in interface Iterable<E>
      Specified by:
      iterator in interface Set<E>
      Specified by:
      iterator in class AbstractCollection<E>
      Returns:
      an Iterator on the elements of this HashSet.
      See Also:
      Iterator
    • remove

      public boolean remove​(Object object)
      Removes the specified object from this HashSet.
      Specified by:
      remove in interface Collection<E>
      Specified by:
      remove in interface Set<E>
      Overrides:
      remove in class AbstractCollection<E>
      Parameters:
      object - the object to remove.
      Returns:
      true if the object was removed, false otherwise.
    • size

      public int size()
      Returns the number of elements in this HashSet.
      Specified by:
      size in interface Collection<E>
      Specified by:
      size in interface Set<E>
      Specified by:
      size in class AbstractCollection<E>
      Returns:
      the number of elements in this HashSet.