Класс TreeSet в Java обеспечивает реализацию интерфейса Set, который использует древо для хранения. Объекты хранятся в отсортированном и возрастающем порядке.

Время доступа и поиска довольно быстрое, что делает TreeSet отличным выбором при хранении большого количества отсортированной информации, которая должна быть найдена быстро.

Конструкторы

Ниже приведен список конструкторов, поддерживаемых классом TreeSet.

Конструктор и описание
1TreeSet( )
Этот конструктор создает пустое дерево, которое будет сортироваться в порядке возрастания в соответствии с естественным порядком его элементов.
2TreeSet(Collection c)
Этот конструктор создает набор деревьев, содержащий элементы коллекции c.
3TreeSet(Comparator comp)
Этот конструктор создает пустой набор деревьев, который будет сортироваться в соответствии с данным компаратором.
4TreeSet(SortedSet ss)
Этот конструктор создает TreeSet, который содержит элементы данного SortedSet.

Методы

Помимо методов, унаследованных от родительских классов, TreeSet определяет следующие методы:

Методы и описание
1void add(Object o)
Добавляет указанный элемент к этому набору, если он еще не присутствует.
2boolean addAll(Collection c)
Добавляет все элементы в указанной коллекции к этому набору.
3void clear()
Удаляет все элементы из этого набора.
4Object clone()
Возвращает мелкую копию этого экземпляра TreeSet.
5Comparator comparator()
Возвращает компаратор, используемый для порядка этого отсортированного набора, или null (нуль), если этот набор деревьев использует свои элементы естественного упорядочения.
6boolean contains(Object o)
Возвращает true, если этот набор содержит указанный элемент.
7Object first()
Возвращает первый (самый низкий) элемент, находящийся в этом отсортированном наборе.
8SortedSet headSet(Object toElement)
Возвращает представление (вид) части этого набора, элементы которого строго меньше, чем toElement.
9boolean isEmpty()
Возвращает true, если этот набор не содержит элементов.
10Iterator iterator()
Возвращает итератор над элементами этого набора.
11Object last()
Возвращает последний (самый высокий) элемент, находящийся в этом отсортированном наборе.
12boolean remove(Object o)
Удаляет указанный элемент из этого набора, если он присутствует.
13int size()
Возвращает количество элементов в этом наборе (его мощность).
14SortedSet subSet(Object fromElement, Object toElement)
Возвращает представление (вид) части этого набора, элементы которого варьируются от fromElement, включительно, до toElement, исключительно.
15SortedSet 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]

Оглавление