Пример класса java.util.TreeSet
Параметр
java.util.TreeSet java аналогичен классу
HashSet за исключением сортировки элементов в порядке возрастания. Данные хранятся в
TreeMap которое является сбалансированным двоичным деревом или в SorteMap.
Время доступа очень быстрое, что делает
TreeSet отличный выбор, когда данные большие и их нужно быстро найти.
Параметр
TreeSet реализует 4 конструктора:
- TreeSet(): создает пустой TreeSet.- TreeSet(Collection c): создает TreeSet который содержит элементы из коллекции объектов c.- TreeSet(Comparator comp): создает TreeSet пустой, который будет отсортирован в соответствии с comparator.- TreeSet(SortedSet sset): Создает TreeSet, содержащий элементы sset.TreeSet methods
void add(Object o)Использует метод
put() TreeMap, чтобы добавить pair.
void addAll(Collection c)Добавляет набор элементов в список.
void remove(Object o)Удаляет первый экземпляр из списка.
void clear()Удаляет все элементы.
SortedSet subSet(Object E1, Object E2)Возвращает подсписок элементов, лежащих между двумя границами [E1, E2].
SortedSet headSet(Object E)Возвращает набор элементов, которые строго меньше
E.
SortedSet tailSet(Object E)Возвращает набор элементов, которые больше или равны
E.
Object first()Возвращает первый элемент в этом упорядоченном списке (самый маленький).
Object last()Возвращает последний элемент в этом упорядоченном списке (самый большой).
Example
В этом примере мы протестируем два типа:
String и
Целое число.
TreeSet также может сортировать строки в соответствии с буквенно-цифровым кодом ASCII.
import java.util.TreeSet;
public class Main {
public static void main(String args[]) {
// TreeSet типа String
TreeSet tsetString = new TreeSet();
// добавляем объекты типа String
tsetString.add("D");
tsetString.add("G");
tsetString.add("Z");
tsetString.add("A");
tsetString.add("F");
tsetString.add("T");
tsetString.add("S");
tsetString.add("M");
//display
System.out.println(tsetString);
// TreeSet типа Integer
TreeSet tsetInteger = new TreeSet();
// добавляем объекты типа Integer
tsetInteger.add(5);
tsetInteger.add(87);
tsetInteger.add(42);
tsetInteger.add(24);
tsetInteger.add(23);
tsetInteger.add(152);
tsetInteger.add(70);
tsetInteger.add(54);
System.out.println(tsetInteger);
}
}
Output:
[A, D, F, G, M, S, T, Z]
[5, 23, 24, 42, 54, 70, 87, 152]
Здесь мы видим, что оба списка содержат значения, отсортированные по порядку полумесяц.
Вы можете ознакомиться со следующими руководствами по коллекции объектов TreeSet:
Просмотр TreeSet с помощью IteratorДобавление элемента в TreeSetУдалить элемент из TreeSetудалить все элементы из TreeSetРазница между TreeSet и HashSetПреобразование HashSet в TreeSetПример TreeSet с ComparableСортировка TreeSet в порядке убыванияПроверяем, существует ли элемент в TreeSetReferences:
TutorialsPoint: java - TreeSet classJavadoc: TreeSet