public class

TreeSet

extends AbstractSet<E>
implements NavigableSet<E>
java.lang.Object
   ↳ java.util.AbstractCollection<E>
     ↳ java.util.AbstractSet<E>
       ↳ java.util.TreeSet<E>

Class Overview

TreeSet is an implementation of SortedSet. All optional operations (adding and removing) are supported. The elements can be any objects which are comparable to each other either using their natural order or a specified Comparator.

Summary

Public Constructors
TreeSet()
Constructs a new empty instance of TreeSet which uses natural ordering.
TreeSet(Collection<? extends E> collection)
Constructs a new instance of TreeSet which uses natural ordering and containing the unique elements in the specified collection.
TreeSet(Comparator<? super E> comparator)
Constructs a new empty instance of TreeSet which uses the specified comparator.
TreeSet(SortedSet<E> set)
Constructs a new instance of TreeSet containing the elements of the specified SortedSet and using the same Comparator.
Public Methods
boolean add(Object object)
Adds the specified object to this TreeSet.
boolean addAll(Collection<? extends E> collection)
Adds the objects in the specified collection to this TreeSet.
E ceiling(Object e)
void clear()
Removes all elements from this TreeSet, leaving it empty.
Comparator<? super E> comparator()
Returns the comparator used to compare elements in this TreeSet.
boolean contains(Object object)
Searches this TreeSet for the specified object.
Iterator<E> descendingIterator()
Answers a descending iterator of this set.
NavigableSet<E> descendingSet()
Answers a reverse order view of this set.
E first()
Answers the first element in this TreeSet.
E floor(Object e)
SortedSet<E> headSet(Object end)
Answers a SortedSet of the specified portion of this TreeSet which contains elements less than the end element.
NavigableSet<E> headSet(Object end, boolean endInclusive)
E higher(Object e)
boolean isEmpty()
Returns true if this TreeSet has no element, otherwise false.
Iterator<E> iterator()
Returns an Iterator on the elements of this TreeSet.
E last()
Answers the last element in this TreeSet.
E lower(Object e)
E pollFirst()
Deletes and answers the smallest element, or null if the set is empty.
E pollLast()
Deletes and answers the biggest element, or null if the set is empty.
boolean remove(Object object)
Removes an occurrence of the specified object from this TreeSet.
int size()
Returns the number of elements in this TreeSet.
SortedSet<E> subSet(Object start, Object end)
Answers a SortedSet of the specified portion of this TreeSet which contains elements greater or equal to the start element but less than the end element.
NavigableSet<E> subSet(Object start, boolean startInclusive, Object end, boolean endInclusive)
NavigableSet<E> tailSet(Object start, boolean startInclusive)
SortedSet<E> tailSet(Object start)
Answers a SortedSet of the specified portion of this TreeSet which contains elements greater or equal to the start element.
[Expand]
Inherited Methods
From class java.util.AbstractSet
From class java.util.AbstractCollection
From class java.lang.Object
From interface java.lang.Iterable
From interface java.util.Collection
From interface java.util.NavigableSet
From interface java.util.Set
From interface java.util.SortedSet

Public Constructors

public TreeSet ()

Constructs a new empty instance of TreeSet which uses natural ordering.

public TreeSet (Collection<? extends E> collection)

Constructs a new instance of TreeSet which uses natural ordering and containing the unique elements in the specified collection.

Parameters
collection the collection of elements to add.
Throws
ClassCastException when an element in the collection does not implement the Comparable interface, or the elements in the collection cannot be compared.

public TreeSet (Comparator<? super E> comparator)

Constructs a new empty instance of TreeSet which uses the specified comparator.

Parameters
comparator the comparator to use.

public TreeSet (SortedSet<E> set)

Constructs a new instance of TreeSet containing the elements of the specified SortedSet and using the same Comparator.

Parameters
set the SortedSet of elements to add.

Public Methods

public boolean add (Object object)

Adds the specified object to this TreeSet.

Parameters
object the object to add.
Returns
  • true when this TreeSet did not already contain the object, false otherwise.
Throws
ClassCastException when the object cannot be compared with the elements in this TreeSet.
NullPointerException when the object is null and the comparator cannot handle null.

public boolean addAll (Collection<? extends E> collection)

Adds the objects in the specified collection to this TreeSet.

Parameters
collection the collection of objects to add.
Returns
  • true if this TreeSet was modified, false otherwise.
Throws
ClassCastException when an object in the collection cannot be compared with the elements in this TreeSet.
NullPointerException when an object in the collection is null and the comparator cannot handle null.

public E ceiling (Object e)

public void clear ()

Removes all elements from this TreeSet, leaving it empty.

See Also

public Comparator<? super E> comparator ()

Returns the comparator used to compare elements in this TreeSet.

Returns
  • a Comparator or null if the natural ordering is used

public boolean contains (Object object)

Searches this TreeSet for the specified object.

Parameters
object the object to search for.
Returns
  • true if object is an element of this TreeSet, false otherwise.
Throws
ClassCastException when the object cannot be compared with the elements in this TreeSet.
NullPointerException when the object is null and the comparator cannot handle null.

public Iterator<E> descendingIterator ()

Answers a descending iterator of this set.

Returns
  • the descending iterator

public NavigableSet<E> descendingSet ()

Answers a reverse order view of this set.

Returns
  • the reverse order view
See Also

public E first ()

Answers the first element in this TreeSet.

Returns
  • the first element
Throws
NoSuchElementException when this TreeSet is empty

public E floor (Object e)

public SortedSet<E> headSet (Object end)

Answers a SortedSet of the specified portion of this TreeSet which contains elements less than the end element. The returned SortedSet is backed by this TreeSet so changes to one are reflected by the other.

Parameters
end the end element
Returns
  • a subset where the elements are less than end
Throws
ClassCastException when the end object cannot be compared with the elements in this TreeSet
NullPointerException when the end object is null and the comparator cannot handle null

public NavigableSet<E> headSet (Object end, boolean endInclusive)

public E higher (Object e)

public boolean isEmpty ()

Returns true if this TreeSet has no element, otherwise false.

Returns
  • true if this TreeSet has no element.
See Also

public Iterator<E> iterator ()

Returns an Iterator on the elements of this TreeSet.

Returns
  • an Iterator on the elements of this TreeSet.
See Also

public E last ()

Answers the last element in this TreeSet.

Returns
  • the last element
Throws
NoSuchElementException when this TreeSet is empty

public E lower (Object e)

public E pollFirst ()

Deletes and answers the smallest element, or null if the set is empty.

Returns
  • the smallest element, or null if the set is empty
See Also

public E pollLast ()

Deletes and answers the biggest element, or null if the set is empty.

Returns
  • the biggest element, or null if the set is empty
See Also

public boolean remove (Object object)

Removes an occurrence of the specified object from this TreeSet.

Parameters
object the object to remove.
Returns
  • true if this TreeSet was modified, false otherwise.
Throws
ClassCastException when the object cannot be compared with the elements in this TreeSet.
NullPointerException when the object is null and the comparator cannot handle null.

public int size ()

Returns the number of elements in this TreeSet.

Returns
  • the number of elements in this TreeSet.

public SortedSet<E> subSet (Object start, Object end)

Answers a SortedSet of the specified portion of this TreeSet which contains elements greater or equal to the start element but less than the end element. The returned SortedSet is backed by this TreeSet so changes to one are reflected by the other.

Parameters
start the start element
end the end element
Returns
  • a subset where the elements are greater or equal to start and less than end
Throws
ClassCastException when the start or end object cannot be compared with the elements in this TreeSet
NullPointerException when the start or end object is null and the comparator cannot handle null

public NavigableSet<E> subSet (Object start, boolean startInclusive, Object end, boolean endInclusive)

public NavigableSet<E> tailSet (Object start, boolean startInclusive)

public SortedSet<E> tailSet (Object start)

Answers a SortedSet of the specified portion of this TreeSet which contains elements greater or equal to the start element. The returned SortedSet is backed by this TreeSet so changes to one are reflected by the other.

Parameters
start the start element
Returns
  • a subset where the elements are greater or equal to start
Throws
ClassCastException when the start object cannot be compared with the elements in this TreeSet
NullPointerException when the start object is null and the comparator cannot handle null