Класс TreeSet
Класс TreeSet в Java обеспечивает реализацию интерфейса Set, который использует древо для хранения. Объекты хранятся в отсортированном и возрастающем порядке.
Время доступа и поиска довольно быстрое, что делает TreeSet отличным выбором при хранении большого количества отсортированной информации, которая должна быть найдена быстро.
Конструкторы
Ниже приведен список конструкторов, поддерживаемых классом TreeSet.
№ Конструктор и описание
1 TreeSet( )
Этот конструктор создает пустое дерево, которое будет сортироваться в порядке возрастания в соответствии с естественным порядком его элементов.
2 TreeSet(Collection c)
Этот конструктор создает набор деревьев, содержащий элементы коллекции c.
3 TreeSet(Comparator comp)
Этот конструктор создает пустой набор деревьев, который будет сортироваться в соответствии с данным компаратором.
4 TreeSet(SortedSet ss)
Этот конструктор создает TreeSet, который содержит элементы данного SortedSet.
Методы
Помимо методов, унаследованных от родительских классов, TreeSet определяет следующие методы:
№ Методы и описание
1 void add(Object o)
Добавляет указанный элемент к этому набору, если он еще не присутствует.
2 boolean addAll(Collection c)
Добавляет все элементы в указанной коллекции к этому набору.
3 void clear()
Удаляет все элементы из этого набора.
4 Object clone()
Возвращает мелкую копию этого экземпляра TreeSet.
5 Comparator comparator()
Возвращает компаратор, используемый для порядка этого отсортированного набора, или null (нуль), если этот набор деревьев использует свои элементы естественного упорядочения.
6 boolean contains(Object o)
Возвращает true, если этот набор содержит указанный элемент.
7 Object first()
Возвращает первый (самый низкий) элемент, находящийся в этом отсортированном наборе.
8 SortedSet headSet(Object toElement)
Возвращает представление (вид) части этого набора, элементы которого строго меньше, чем toElement.
9 boolean isEmpty()
Возвращает true, если этот набор не содержит элементов.
10 Iterator iterator()
Возвращает итератор над элементами этого набора.
11 Object last()
Возвращает последний (самый высокий) элемент, находящийся в этом отсортированном наборе.
12 boolean remove(Object o)
Удаляет указанный элемент из этого набора, если он присутствует.
13 int size()
Возвращает количество элементов в этом наборе (его мощность).
14 SortedSet subSet(Object fromElement, Object toElement)
Возвращает представление (вид) части этого набора, элементы которого варьируются от fromElement, включительно, до toElement, исключительно.
15 SortedSet tailSet(Object fromElement)
Возвращает представление (вид) части этого набора, элементы которого больше или равны fromElement.
Пример
Следующая программа демонстрирует работу нескольких методов, поддерживаемых TreeSet в Java:
import java.util.*;
public class TreeSetDemo {
public static void main(String args[]) {
// Создаем набор древ
TreeSet ts = new TreeSet();
// Добавляем элементы к набору древ
ts.add("C");
ts.add("A");
ts.add("B");
ts.add("E");
ts.add("F");
ts.add("D");
System.out.println(ts);
}
}
Получим следующий результат:
[A, B, C, D, E, F]