edu.emory.mathcs.backport.java.util
Class TreeSet

java.lang.Object
  extended byjava.util.AbstractCollection
      extended byjava.util.AbstractSet
          extended byedu.emory.mathcs.backport.java.util.TreeSet
All Implemented Interfaces:
java.lang.Cloneable, java.util.Collection, NavigableSet, java.io.Serializable, java.util.Set, java.util.SortedSet

public class TreeSet
extends java.util.AbstractSet
implements NavigableSet, java.lang.Cloneable, java.io.Serializable

See Also:
Serialized Form

Constructor Summary
TreeSet()
           
TreeSet(java.util.Collection c)
           
TreeSet(java.util.Comparator comparator)
           
TreeSet(java.util.SortedSet s)
           
 
Method Summary
 boolean add(java.lang.Object o)
           
 boolean addAll(java.util.Collection c)
           
 java.lang.Object ceiling(java.lang.Object e)
          Returns the least element in this set greater than or equal to the given element, or if there is no such element.
 void clear()
           
 java.lang.Object clone()
           
 java.util.Comparator comparator()
           
 boolean contains(java.lang.Object o)
           
 java.util.Iterator descendingIterator()
          Returns an iterator over the elements in this set, in descending order.
 NavigableSet descendingSet()
          Returns a reverse order view of the elements contained in this set.
 java.lang.Object first()
           
 java.lang.Object floor(java.lang.Object e)
          Returns the greatest element in this set less than or equal to the given element, or if there is no such element.
 java.util.SortedSet headSet(java.lang.Object toElement)
          

Equivalent to .

 NavigableSet headSet(java.lang.Object toElement, boolean toInclusive)
          Returns a view of the portion of this set whose elements are less than (or equal to, if is true) .
 java.lang.Object higher(java.lang.Object e)
          Returns the least element in this set strictly greater than the given element, or if there is no such element.
 boolean isEmpty()
           
 java.util.Iterator iterator()
          Returns an iterator over the elements in this set, in ascending order.
 java.lang.Object last()
           
 java.lang.Object lower(java.lang.Object e)
          Returns the greatest element in this set strictly less than the given element, or if there is no such element.
 java.lang.Object pollFirst()
          Retrieves and removes the first (lowest) element, or returns if this set is empty.
 java.lang.Object pollLast()
          Retrieves and removes the last (highest) element, or returns if this set is empty.
 boolean remove(java.lang.Object o)
           
 int size()
           
 NavigableSet subSet(java.lang.Object fromElement, boolean fromInclusive, java.lang.Object toElement, boolean toInclusive)
          Returns a view of the portion of this set whose elements range from to .
 java.util.SortedSet subSet(java.lang.Object fromElement, java.lang.Object toElement)
          

Equivalent to .

 java.util.SortedSet tailSet(java.lang.Object fromElement)
          

Equivalent to .

 NavigableSet tailSet(java.lang.Object fromElement, boolean fromInclusive)
          Returns a view of the portion of this set whose elements are greater than (or equal to, if is true) .
 java.lang.Object[] toArray()
           
 java.lang.Object[] toArray(java.lang.Object[] a)
           
 
Methods inherited from class java.util.AbstractSet
equals, hashCode, removeAll
 
Methods inherited from class java.util.AbstractCollection
containsAll, retainAll, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Set
containsAll, equals, hashCode, removeAll, retainAll
 

Constructor Detail

TreeSet

public TreeSet()

TreeSet

public TreeSet(java.util.Comparator comparator)

TreeSet

public TreeSet(java.util.Collection c)

TreeSet

public TreeSet(java.util.SortedSet s)
Method Detail

lower

public java.lang.Object lower(java.lang.Object e)
Description copied from interface: NavigableSet
Returns the greatest element in this set strictly less than the given element, or if there is no such element.

Specified by:
lower in interface NavigableSet
Parameters:
e - the value to match
Returns:
the greatest element less than , or if there is no such element

floor

public java.lang.Object floor(java.lang.Object e)
Description copied from interface: NavigableSet
Returns the greatest element in this set less than or equal to the given element, or if there is no such element.

Specified by:
floor in interface NavigableSet
Parameters:
e - the value to match
Returns:
the greatest element less than or equal to , or if there is no such element

ceiling

public java.lang.Object ceiling(java.lang.Object e)
Description copied from interface: NavigableSet
Returns the least element in this set greater than or equal to the given element, or if there is no such element.

Specified by:
ceiling in interface NavigableSet
Parameters:
e - the value to match
Returns:
the least element greater than or equal to , or if there is no such element

higher

public java.lang.Object higher(java.lang.Object e)
Description copied from interface: NavigableSet
Returns the least element in this set strictly greater than the given element, or if there is no such element.

Specified by:
higher in interface NavigableSet
Parameters:
e - the value to match
Returns:
the least element greater than , or if there is no such element

pollFirst

public java.lang.Object pollFirst()
Description copied from interface: NavigableSet
Retrieves and removes the first (lowest) element, or returns if this set is empty.

Specified by:
pollFirst in interface NavigableSet
Returns:
the first element, or if this set is empty

pollLast

public java.lang.Object pollLast()
Description copied from interface: NavigableSet
Retrieves and removes the last (highest) element, or returns if this set is empty.

Specified by:
pollLast in interface NavigableSet
Returns:
the last element, or if this set is empty

iterator

public java.util.Iterator iterator()
Description copied from interface: NavigableSet
Returns an iterator over the elements in this set, in ascending order.

Specified by:
iterator in interface NavigableSet

descendingIterator

public java.util.Iterator descendingIterator()
Description copied from interface: NavigableSet
Returns an iterator over the elements in this set, in descending order. Equivalent in effect to .

Specified by:
descendingIterator in interface NavigableSet
Returns:
an iterator over the elements in this set, in descending order

subSet

public java.util.SortedSet subSet(java.lang.Object fromElement,
                                  java.lang.Object toElement)
Description copied from interface: NavigableSet

Equivalent to .

Specified by:
subSet in interface NavigableSet

headSet

public java.util.SortedSet headSet(java.lang.Object toElement)
Description copied from interface: NavigableSet

Equivalent to .

Specified by:
headSet in interface NavigableSet

tailSet

public java.util.SortedSet tailSet(java.lang.Object fromElement)
Description copied from interface: NavigableSet

Equivalent to .

Specified by:
tailSet in interface NavigableSet

subSet

public NavigableSet subSet(java.lang.Object fromElement,
                           boolean fromInclusive,
                           java.lang.Object toElement,
                           boolean toInclusive)
Description copied from interface: NavigableSet
Returns a view of the portion of this set whose elements range from to . If and are equal, the returned set is empty unless and 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 on an attempt to insert an element outside its range.

Specified by:
subSet in interface NavigableSet
Parameters:
fromElement - low endpoint of the returned set
fromInclusive - if the low endpoint is to be included in the returned view
toElement - high endpoint of the returned set
toInclusive - if the high endpoint is to be included in the returned view
Returns:
a view of the portion of this set whose elements range from , inclusive, to , exclusive

headSet

public NavigableSet headSet(java.lang.Object toElement,
                            boolean toInclusive)
Description copied from interface: NavigableSet
Returns a view of the portion of this set whose elements are less than (or equal to, if is 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 on an attempt to insert an element outside its range.

Specified by:
headSet in interface NavigableSet
Parameters:
toElement - high endpoint of the returned set
toInclusive - if the high endpoint is to be included in the returned view
Returns:
a view of the portion of this set whose elements are less than (or equal to, if is true)

tailSet

public NavigableSet tailSet(java.lang.Object fromElement,
                            boolean fromInclusive)
Description copied from interface: NavigableSet
Returns a view of the portion of this set whose elements are greater than (or equal to, if is 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 on an attempt to insert an element outside its range.

Specified by:
tailSet in interface NavigableSet
Parameters:
fromElement - low endpoint of the returned set
fromInclusive - if the low endpoint is to be included in the returned view
Returns:
a view of the portion of this set whose elements are greater than or equal to

descendingSet

public NavigableSet descendingSet()
Description copied from interface: NavigableSet
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 operation), the results of the iteration are undefined.

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

Specified by:
descendingSet in interface NavigableSet
Returns:
a reverse order view of this set

comparator

public java.util.Comparator comparator()
Specified by:
comparator in interface java.util.SortedSet

first

public java.lang.Object first()
Specified by:
first in interface java.util.SortedSet

last

public java.lang.Object last()
Specified by:
last in interface java.util.SortedSet

size

public int size()
Specified by:
size in interface java.util.Set

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface java.util.Set

contains

public boolean contains(java.lang.Object o)
Specified by:
contains in interface java.util.Set

toArray

public java.lang.Object[] toArray()
Specified by:
toArray in interface java.util.Set

toArray

public java.lang.Object[] toArray(java.lang.Object[] a)
Specified by:
toArray in interface java.util.Set

add

public boolean add(java.lang.Object o)
Specified by:
add in interface java.util.Set

remove

public boolean remove(java.lang.Object o)
Specified by:
remove in interface java.util.Set

addAll

public boolean addAll(java.util.Collection c)
Specified by:
addAll in interface java.util.Set

clear

public void clear()
Specified by:
clear in interface java.util.Set

clone

public java.lang.Object clone()