TreeSet class
TreeSet extends AbstractSet and implements the NavigableSet interface. It creates a collection that uses a tree for storage. Objects are stored in sorted, ascending order.
TreeSet is a generic class that has this declaration:
class TreeSet<E>
E specifies the type of objects that the set will hold.
A demonstration of a tree set with String elements sorted according to their natural ordering.
import java.util.Set;
import java.util.TreeSet;
public class Main {
public static void main(String[] args) {
Set<String> ss = new TreeSet<String>();
String[] fruits = { "apples", "pears", "grapes", "bananas", "kiwis" };
for (String fruit : fruits){
ss.add(fruit);
}
for (String s : ss){
System.out.print(s + " ");
}
}
}
Output:
apples bananas grapes kiwis pears
Constructor
TreeSet()
- Creates a new, empty tree set, sorted according to the natural ordering of its elements.
TreeSet(Collection<? extends E> c)
- Creates a new tree set containing the elements in the specified collection, sorted according to the natural ordering of its elements.
TreeSet(Comparator<? super E> comparator)
- Creates a new, empty tree set, sorted according to the specified comparator.
TreeSet(SortedSet<E> s)
- Creates a new tree set containing the same elements and using the same ordering as the specified sorted set.
The first form constructs an empty tree set that will be sorted in ascending order according to the natural order of its elements. The second form builds a tree set that contains the elements of c.
The third form constructs an empty tree set that will be sorted according to the comparator specified by comp. The fourth form builds a tree set that contains the elements of ss.
Add elements to a TreeSet
boolean add(E e)
- Adds the specified element to this set if it is not already present.
boolean addAll(Collection<? extends E> c)
- Adds all of the elements in the specified collection to this set.
Get the least and greatest element in 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.
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.
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.
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.
Clear a TreeSet
void clear()
- Removes all of the elements from this set.
Clone a TreeSet
Object clone()
- Returns a shallow copy of this TreeSet instance.
Get the comparator used by this TreeSet
Comparator<? super E> comparator()
- Returns the comparator used to order the elements in this set, or null if this set uses the natural ordering of its elements.
If this TreeSet contains a certain element
boolean contains(Object o)
- Returns true if this set contains the specified element.
Get the descending iterator and descending set
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.
The first and last element in this TreeSet
E first()
- Returns the first (lowest) element currently in this set.
E last()
- Returns the last (highest) element currently in this set.
Get the head set and tail set
SortedSet<E> headSet(E toElement)
- Returns a view of the portion of this set whose elements are strictly less than toElement.
NavigableSet<E> headSet(E toElement, boolean inclusive)
- Returns a view of the portion of this set whose elements are less than (or equal to, if inclusive is true) toElement.
SortedSet<E> tailSet(E fromElement)
- Returns a view of the portion of this set whose elements are greater than or equal to fromElement.
NavigableSet<E> tailSet(E fromElement, boolean inclusive)
- Returns a view of the portion of this set whose elements are greater than (or equal to, if inclusive is true) fromElement.
Is this TreeSet empty
boolean isEmpty() Returns true if this set contains no elements.
Get an iterator over the elements in this set in ascending order
Iterator<E> iterator()
- Returns an iterator over the elements in this set in ascending order.
Get and remove first and last element in this tree
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.
Remove element from TreeSet
boolean remove(Object o)
- Removes the specified element from this set if it is present.
Get the size of this TreeSet
int size()
- Returns the number of elements in this set (its cardinality).
Get a subset from this TreeSet
NavigableSet<E> subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)
- Returns a view of the portion of this set whose elements range from fromElement to toElement.
SortedSet<E> subSet(E fromElement, E toElement)
- Returns a view of the portion of this set whose elements range from fromElement, inclusive, to toElement, exclusive.
Revised from Open JDK source code