Java TreeSet

Java Treeset



TreeSet jest uważany za jedną z najbardziej podstawowych implementacji SortedSet, która używa drzewa jako podstawowego typu pamięci. W TreeSet każda wartość jest przechowywana w posortowanej kolejności. Domyślnie wszystkie wartości liczbowe są zachowywane w kolejności rosnącej, a ciągi znaków są obsługiwane w kolejności opartej na słowniku. TreeSet zachowuje kolejność rosnącą i opartą na słowniku, niezależnie od tego, czy określono porównanie, czy nie. Aby poprawnie zaimplementować interfejs Set, TreeSet musi być zgodny z porównywalnym. Ponadto wartości null są niedopuszczalne w TreeSet.

Przykład 1

Metoda add() jest wymagana do dodania elementów wewnątrz TreeSet. Określony element zostanie dodany przy użyciu tej samej kolejności sortowania, co podczas tworzenia TreeSet. Nie doda zduplikowanych wpisów.









W poprzednim kodzie wstawiliśmy klasę narzędzi Java, aby uzyskać dostęp do klas i metod Java. Następnie metoda main() jest zawarta w definicji klasy „CreatingTreeSet”. Przetestowaliśmy kod TreeSet wewnątrz metody main(). Najpierw stworzyliśmy zmienną „person” z klasy TreeSet i ustawiliśmy pusty interfejs TreeSet w zadeklarowanej zmiennej „persons”.



Zauważ, że dodaliśmy tylko elementy łańcuchowe, ponieważ typ danych TreeSet jest określony w momencie tworzenia jego interfejsu. Wstawiliśmy pięć elementów łańcuchowych do TreeSet, gdzie każdy element łańcuchowy jest unikalny. Następnie przeszliśmy przez każdy element TreeSet z metody iterator(), który zostanie wydrukowany w porządku rosnącym na ekranie wyjściowym.





Elementy utworzone przy użyciu interfejsu TreeSet są pobierane jako dane wyjściowe w następującym trybie wyjściowym:



Przykład 2

Po utworzeniu TreeSet można uzyskać dostęp do elementów za pomocą wbudowanej metody obsługiwanej przez TreeSet. Metoda zawiera() sprawdza określony element w TreeSet. Metoda first() pobiera początkowy element TreeSet, podczas gdy metoda last() pobiera element końcowy TreeSet.

Po zaimportowaniu klasy narzędziowej zdefiniowaliśmy klasę „AccessingTreeSet”. Następnie wdrożyliśmy metodę main() w określonej klasie Java w celu uzyskania dostępu do elementów TreeSet. Zadeklarowaliśmy obiekt „Colors” typu NavigableSet z odwołaniem do klasy TreeSet. TreeSet() jest pusty, który jest dodawany wraz z wartościami łańcuchowymi przez wywołanie metody add() . Tutaj dodaliśmy trzy wartości łańcuchowe, nazwy różnych kolorów. Następnie wartości TreeSet zostaną wyświetlone na ekranie za pomocą instrukcji print. Następnie utworzyliśmy zmienną „znajdź”, w której ciąg znaków jest inicjowany w celu sprawdzenia. Aby sprawdzić, czy łańcuch istnieje w dostarczonych drzewach, wywołaliśmy metodę zawiera() i dodaliśmy zmienną „find” jako parametr. Metoda Zawiera() weryfikuje istnienie określonego elementu ciągu z zestawu TreeSet i generuje wyniki typu Boolean. Co więcej, otrzymaliśmy również pierwszy i ostatni element w TreeSet z metody first() i last() . Obie metody generują określony element umieszczony na pierwszej i ostatniej pozycji w dostarczonym TreeSet.

Sprawdzenie określonego łańcucha za pomocą metody zawiera() zwraca wartość true, co oznacza, że ​​element łańcucha jest częścią metody zawiera() . Następnie pierwsza i ostatnia wartość TreeSet są również wyświetlane poniżej:

Przykład 3

W poprzednim przykładzie uzyskano dostęp do pierwszego i ostatniego elementu. Aby uzyskać dostęp i wyeliminować najwyższy i najniższy element, używana jest metoda pollFirst() i pollLast(). Metoda pollFirst() służy do pobierania i usuwania najniższego elementu z pierwszego. Metoda pollLast() jest stosowana do zlokalizowania i wyeliminowania najwyższego elementu z ostatniego elementu TreeSet.

Program jest tworzony z klasą Java „LowerAndHigherValueFromTreeSet”, w której tworzona jest metoda main(). Tutaj udostępniliśmy interfejs TreeSet z klasy TreeSet, deklarując obiekt „IntegerSet”. Początkowo stworzyliśmy pusty zestaw TreeSet, który można dodać wraz z elementem za pomocą metody add(). Elementy Integer są ładowane do TreeSet przy użyciu metody add().

Następnie wydaliśmy instrukcję print używając metody pollFirst() i pollLast(). Metoda pollFirst() pobiera pierwsze najniższe elementy z określonego zestawu drzew. Z drugiej strony metoda pollLast() pobiera najwyższy element z ostatniego elementu TreeSet.

Wyniki są uzyskiwane z metod pollFirst() i pollLast(), które wyświetlają najniższy i najwyższy element z TreeSet na wyjściu.

Przykład 4

Metoda clear() służy do czyszczenia wszystkich elementów znajdujących się w TreeSet. Pusty TreeSet jest zwracany po zaimplementowaniu metody clear() w TreeSet.

Klasa publiczna „ClearTreeSet” jest ustawiana za pomocą metody main() w poprzednim programie. Wygenerowaliśmy tam pusty TreeSet, który jest ustawiony w zmiennej klasy TreeSet „SetElements”. Następnie wstawiliśmy losowe liczby za pomocą metody add() wewnątrz TreeSet. Następnie wydrukowaliśmy TreeSet, aby pokazać znajdujące się w nim elementy. Po wyświetleniu zastosowaliśmy metodę clear() w celu wyczyszczenia TreeSet.

Przykład 5

TreeSet nie zezwala na dodawanie heterogenicznych elementów. Jeśli spróbujemy dodać heterogeniczne obiekty klasy, w czasie wykonywania zostanie rzucony wyjątek „classCastException”. TreeSet akceptuje tylko obiekty, które są jednorodne i porównywalne.

Wdrożyliśmy metodę main() w klasie Java „HeterogenousObjectTreeSet”, w której ustawiliśmy interfejs TreeSet. TreeSet jest zdefiniowany w obiekcie „CharSet”. Elementy są następnie dodawane do obiektu „CharSet” zestawu TreeSet. Wstawiliśmy porównywalne elementy z interfejsem StringBuffer. Zauważ, że ostatni element wewnątrz TreeSet jest heterogeniczny, który jest wartością całkowitą. Następnie wydrukowaliśmy elementy TreeSet, aby uzyskać wyniki wyszukiwania elementu heterogenicznego.

Wyniki pokazują, że pierwsza wartość indeksu TreeSet nie jest wyświetlana, ale wszystkie elementy znaków są wyświetlane na ekranie ze względu na porównywalne obiekty.

Wniosek

Klasa Java TreeSet zawiera tylko charakterystyczne elementy, takie jak HashSet. TreeSet to optymalny sposób przechowywania dużych ilości odpowiednich danych ze względu na jego szybką dostępność i czas trwania wyszukiwania, co ułatwia szybkie wykrywanie danych. Dokument obejmuje podstawy klasy TreeSet, w tym jej deklarację. Ponadto omówiono tutaj różne metody i operacje.