Java TreeSet

Java Treeset



TreeSet се счита за една от най-фундаменталните реализации на SortedSet, които използват дърво като основен тип съхранение. В TreeSet всяка стойност се съхранява в сортираната последователност. По подразбиране всички числови стойности се запазват във възходящ ред, а низовете се обработват в ред, базиран на речника. TreeSet поддържа възходящ ред и ред, базиран на речник, независимо дали сравнимото е посочено или не. За правилното прилагане на интерфейса Set, TreeSet трябва да е съвместим със сравнимия. Освен това нулевите стойности не са приемливи в TreeSet.

Пример 1

Методът add() е необходим за добавяне на елементите вътре в TreeSet. Посоченият елемент ще бъде добавен, като се използва същата последователност за сортиране, както при създаването на TreeSet. Няма да добавя дублиращи се записи.









В предишния код сме вмъкнали помощния клас на Java за достъп до класовете и методите на Java. След това методът main() е затворен в дефиницията на класа „CreatingTreeSet“. Тествахме кода на TreeSet вътре в метода main(). Първо създадохме променлива „person“ от класа TreeSet и зададохме празния интерфейс TreeSet в декларираната променлива „persons“.



Обърнете внимание, че добавихме само низовите елементи, тъй като типът данни на TreeSet е посочен по време на създаването на неговия интерфейс. Вмъкнахме пет низови елемента в TreeSet, където всеки низов елемент е уникален. След това обходихме всеки елемент от TreeSet от метода iterator(), който ще бъде отпечатан във възходящ ред на изходния екран.





Елементите, създадени с помощта на интерфейса TreeSet, се извличат като изход на следната изходна снимка:



Пример 2

След създаването на TreeSet, елементите могат да бъдат достъпни с помощта на вградения метод, поддържан от TreeSet. Методът contains() проверява конкретния елемент в TreeSet. Методът first() извлича началния елемент на TreeSet, докато методът last() извлича крайния елемент на TreeSet.

След импортирането на помощния клас сме дефинирали клас „AccessingTreeSet“. След това внедрихме метода main() в посочения Java клас за достъп до елементите TreeSet. Декларирахме обект „Цветове“ от тип NavigableSet с препратка към класа TreeSet. TreeSet() е празен, който се добавя със стойностите на низа чрез извикване на метода add(). Тук сме добавили три низови стойности, имената на различните цветове. След това стойностите на TreeSet ще бъдат показани на екрана чрез оператор за печат. След това създадохме променлива „find“, където низът се инициализира за проверка. За да проверим дали низът съществува в предоставените дървета, извикахме метода contains() и добавихме променливата „find“ като параметър. Методът Contains() проверява съществуването на посочения низов елемент от TreeSet и генерира булевите резултати. Освен това получихме първия и последния елемент в TreeSet от методите first() и last(). И двата метода генерират конкретния елемент, поставен на първата и последната позиция в предоставения TreeSet.

Проверката на конкретния низ от метода contains() връща истинската стойност, която показва, че елементът на низа е част от метода contains(). След това първата и последната стойност на TreeSet също се показват по-долу:

Пример 3

Първият и последният елемент са били достъпни в предишния пример. За достъп и елиминиране на най-високите и най-ниските елементи се използват методите pollFirst() и pollLast(). Методът pollFirst() се използва за извличане и премахване на най-ниския елемент от първия. Методът pollLast() се прилага за намиране и елиминиране на най-високия елемент от последния от TreeSet.

Програмата е установена с Java класа „LowerAndHigherValueFromTreeSet“, където е конструиран методът main(). Тук предоставихме интерфейса TreeSet от класа TreeSet, като декларирахме обекта „IntegerSet“. Първоначално създадохме празен TreeSet, който може да бъде добавен с елемента чрез използване на метода add(). Елементите Integer се зареждат в TreeSet с помощта на метода add().

След това дадохме оператор за печат, използвайки метода pollFirst() и pollLast(). Методът pollFirst() получава първите най-ниски елементи от посочения TreeSet. От друга страна, методът pollLast() получава най-високия елемент от последния от TreeSet.

Резултатите се получават от методите pollFirst() и pollLast(), които показват най-ниския и най-високия елемент от TreeSet в изхода.

Пример 4

Методът clear() се използва за изчистване на всички елементи, присъстващи в TreeSet. Празният TreeSet се връща, след като методът clear() се внедри в TreeSet.

Публичният клас „ClearTreeSet“ е зададен с метода main() в предишната програма. Ние генерирахме празния TreeSet там, който е зададен в променливата на класа TreeSet „SetElements“. След това вмъкнахме произволните числа с помощта на метода add() вътре в TreeSet. След това отпечатахме TreeSet, за да покажем елементите вътре в него. След показване сме използвали метода clear(), за да изчистим TreeSet.

Пример 5

TreeSet няма да позволи добавянето на разнородни елементи. Ако се опитаме да добавим разнородни обекти от класа, „classCastException“ ще бъде хвърлено по време на изпълнение. TreeSet приема само обекти, които са хомогенни и сравними.

Внедрихме метода main() в Java класа „HeterogenousObjectTreeSet“, където сме задали интерфейса TreeSet. TreeSet е дефиниран в обекта „CharSet“. След това елементите се добавят към обекта „CharSet“ на TreeSet. Вмъкнахме сравнимите елементи с интерфейса StringBuffer. Имайте предвид, че последният елемент в TreeSet е разнороден, което е цяло число. След това отпечатахме елементите TreeSet, за да получим резултатите от извличането на разнородния елемент.

Резултатите показват, че първата стойност на индекса на TreeSet не се показва, но всички символни елементи се показват на екрана поради сравними обекти.

Заключение

Класът Java TreeSet включва само отличителни елементи като HashSet. TreeSet е оптималният начин за съхраняване на големи количества подходящи данни поради бързата си достъпност и продължителността на извличане, което улеснява бързото откриване на данни. Документът обхваща основите на класа TreeSet, включително неговата декларация. Освен това тук се обсъждат различни методи и операции.