Skip to content

Most visited

Recently visited

navigation
Added in API level 1

TreeSet

public class TreeSet
extends AbstractSet<E> implements NavigableSet<E>, Cloneable, Serializable

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


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(E 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(E e)

Returns the least element in this set greater than or equal to the given element, or null if there is no such element.

void clear()

Removes all elements from this TreeSet, leaving it empty.

Object clone()

Returns a new TreeSet with the same elements, size and comparator as this TreeSet.

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()

Returns an iterator over the elements in this set, in descending order.

NavigableSet<E> descendingSet()

Returns a reverse order view of the elements contained in this set.

E first()

Returns the first element in this set.

E floor(E e)

Returns the greatest element in this set less than or equal to the given element, or null if there is no such element.

SortedSet<E> headSet(E end)

Returns a SortedSet of the specified portion of this TreeSet which contains elements less than the end element.

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

Returns a view of the portion of this set whose elements are less than (or equal to, if inclusive is true) toElement.

E higher(E e)

Returns the least element in this set strictly greater than the given element, or null if there is no such element.

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()

Returns the last element in this set.

E lower(E e)

Returns the greatest element in this set strictly less than the given element, or null if there is no such element.

E pollFirst()

Retrieves and removes the first (lowest) element, or returns null if this set is empty.

E pollLast()

Retrieves and removes the last (highest) element, or returns null if this 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(E start, E end)

Returns 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(E start, boolean startInclusive, E end, boolean endInclusive)

Returns a view of the portion of this set whose elements range from fromElement to toElement.

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

Returns a view of the portion of this set whose elements are greater than (or equal to, if inclusive is true) fromElement.

SortedSet<E> tailSet(E start)

Returns a SortedSet of the specified portion of this TreeSet which contains elements greater or equal to the start element.

Inherited methods

From class java.util.AbstractSet
From class java.util.AbstractCollection
From class java.lang.Object
From interface java.util.Set
From interface java.util.Collection
From interface java.util.NavigableSet
From interface java.lang.Iterable
From interface java.util.SortedSet

Public constructors

TreeSet

Added in API level 1
TreeSet ()

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

TreeSet

Added in API level 1
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 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.

TreeSet

Added in API level 1
TreeSet (Comparator<? super E> comparator)

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

Parameters
comparator Comparator: the comparator to use.

TreeSet

Added in API level 1
TreeSet (SortedSet<E> set)

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

Parameters
set SortedSet: the SortedSet of elements to add.

Public methods

add

Added in API level 1
boolean add (E object)

Adds the specified object to this TreeSet.

Parameters
object E: the object to add.
Returns
boolean 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.

addAll

Added in API level 1
boolean addAll (Collection<? extends E> collection)

Adds the objects in the specified collection to this TreeSet.

Parameters
collection Collection: the collection of objects to add.
Returns
boolean 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.

ceiling

Added in API level 9
E ceiling (E e)

Returns the least element in this set greater than or equal to the given element, or null if there is no such element.

Parameters
e E: the value to match
Returns
E the least element greater than or equal to e, or null if there is no such element

See also:

clear

Added in API level 1
void clear ()

Removes all elements from this TreeSet, leaving it empty.

See also:

clone

Added in API level 1
Object clone ()

Returns a new TreeSet with the same elements, size and comparator as this TreeSet.

Returns
Object a shallow copy of this TreeSet.

See also:

comparator

Added in API level 1
Comparator<? super E> comparator ()

Returns the comparator used to compare elements in this TreeSet.

Returns
Comparator<? super E> a Comparator or null if the natural ordering is used

contains

Added in API level 1
boolean contains (Object object)

Searches this TreeSet for the specified object.

Parameters
object Object: the object to search for.
Returns
boolean 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.

descendingIterator

Added in API level 9
Iterator<E> descendingIterator ()

Returns an iterator over the elements in this set, in descending order. Equivalent in effect to descendingSet().iterator().

Returns
Iterator<E> an iterator over the elements in this set, in descending order

See also:

descendingSet

Added in API level 9
NavigableSet<E> descendingSet ()

Returns a reverse order view of the elements contained in this set. The descending set is backed by this set, so changes to the set are reflected in the descending set, and vice-versa. If either set is modified while an iteration over either set is in progress (except through the iterator's own remove operation), the results of the iteration are undefined.

The returned set has an ordering equivalent to Collections.reverseOrder(comparator()). The expression s.descendingSet().descendingSet() returns a view of s essentially equivalent to s.

Returns
NavigableSet<E> a reverse order view of this set

See also:

first

Added in API level 1
E first ()

Returns the first element in this set.

Returns
E the first element.
Throws
NoSuchElementException when this TreeSet is empty

floor

Added in API level 9
E floor (E e)

Returns the greatest element in this set less than or equal to the given element, or null if there is no such element.

Parameters
e E: the value to match
Returns
E the greatest element less than or equal to e, or null if there is no such element

See also:

headSet

Added in API level 1
SortedSet<E> headSet (E end)

Returns 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 E: the end element
Returns
SortedSet<E> 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

headSet

Added in API level 9
NavigableSet<E> headSet (E end, 
                boolean endInclusive)

Returns a view of the portion of this set whose elements are less than (or equal to, if inclusive is true) toElement. The returned set is backed by this set, so changes in the returned set are reflected in this set, and vice-versa. The returned set supports all optional set operations that this set supports.

The returned set will throw an IllegalArgumentException on an attempt to insert an element outside its range.

Parameters
end E: high endpoint of the returned set
endInclusive boolean: true if the high endpoint is to be included in the returned view
Returns
NavigableSet<E> a view of the portion of this set whose elements are less than (or equal to, if inclusive is true) toElement

See also:

higher

Added in API level 9
E higher (E e)

Returns the least element in this set strictly greater than the given element, or null if there is no such element.

Parameters
e E: the value to match
Returns
E the least element greater than e, or null if there is no such element

See also:

isEmpty

Added in API level 1
boolean isEmpty ()

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

Returns
boolean true if this TreeSet has no element.

See also:

iterator

Added in API level 1
Iterator<E> iterator ()

Returns an Iterator on the elements of this TreeSet.

Returns
Iterator<E> an Iterator on the elements of this TreeSet.

See also:

last

Added in API level 1
E last ()

Returns the last element in this set.

Returns
E the last element.
Throws
NoSuchElementException when this TreeSet is empty

lower

Added in API level 9
E lower (E e)

Returns the greatest element in this set strictly less than the given element, or null if there is no such element.

Parameters
e E: the value to match
Returns
E the greatest element less than e, or null if there is no such element

See also:

pollFirst

Added in API level 9
E pollFirst ()

Retrieves and removes the first (lowest) element, or returns null if this set is empty.

Returns
E the first element, or null if this set is empty

See also:

pollLast

Added in API level 9
E pollLast ()

Retrieves and removes the last (highest) element, or returns null if this set is empty.

Returns
E the last element, or null if this set is empty

See also:

remove

Added in API level 1
boolean remove (Object object)

Removes an occurrence of the specified object from this TreeSet.

Parameters
object Object: the object to remove.
Returns
boolean 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.

size

Added in API level 1
int size ()

Returns the number of elements in this TreeSet.

Returns
int the number of elements in this TreeSet.

subSet

Added in API level 1
SortedSet<E> subSet (E start, 
                E end)

Returns 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 E: the start element
end E: the end element
Returns
SortedSet<E> 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

subSet

Added in API level 9
NavigableSet<E> subSet (E start, 
                boolean startInclusive, 
                E end, 
                boolean endInclusive)

Returns a view of the portion of this set whose elements range from fromElement to toElement. If fromElement and toElement are equal, the returned set is empty unless fromExclusive and toExclusive are both true. The returned set is backed by this set, so changes in the returned set are reflected in this set, and vice-versa. The returned set supports all optional set operations that this set supports.

The returned set will throw an IllegalArgumentException on an attempt to insert an element outside its range.

Parameters
start E: low endpoint of the returned set
startInclusive boolean: true if the low endpoint is to be included in the returned view
end E: high endpoint of the returned set
endInclusive boolean: true if the high endpoint is to be included in the returned view
Returns
NavigableSet<E> a view of the portion of this set whose elements range from fromElement, inclusive, to toElement, exclusive

See also:

tailSet

Added in API level 9
NavigableSet<E> tailSet (E start, 
                boolean startInclusive)

Returns a view of the portion of this set whose elements are greater than (or equal to, if inclusive is true) fromElement. The returned set is backed by this set, so changes in the returned set are reflected in this set, and vice-versa. The returned set supports all optional set operations that this set supports.

The returned set will throw an IllegalArgumentException on an attempt to insert an element outside its range.

Parameters
start E: low endpoint of the returned set
startInclusive boolean: true if the low endpoint is to be included in the returned view
Returns
NavigableSet<E> a view of the portion of this set whose elements are greater than or equal to fromElement

See also:

tailSet

Added in API level 1
SortedSet<E> tailSet (E start)

Returns 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 E: the start element
Returns
SortedSet<E> 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
This site uses cookies to store your preferences for site-specific language and display options.

Hooray!

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.