TreeSet w Java

TreeSet to klasa w Java, która implementuje interfejs Set i przechowuje elementy w porządku rosnącym. Jest to jedna z najważniejszych struktur danych dostępnych w Java Collections Framework. TreeSet wykorzystuje strukturę drzewa czerwono-czarnego do przechowywania elementów, co zapewnia efektywność operacji takich jak dodawanie, usuwanie i wyszukiwanie elementów. W tej lekcji przyjrzymy się, jak używać TreeSet w Java na przykładzie unikalnej listy nazw miast.

Przykład użycia TreeSet

Załóżmy, że chcemy stworzyć aplikację, która przechowuje listę unikalnych nazw miast, w które podróżowaliśmy. Użyjemy TreeSet do przechowania tych nazw, aby zapewnić, że będą one przechowywane w porządku alfabetycznym i bez duplikatów.

Klasa TravelDestinations

Najpierw utworzymy klasę TravelDestinations, która będzie zarządzać naszymi miastami.

import java.util.TreeSet;

public class TravelDestinations {
    private TreeSet<String> cities;

    public TravelDestinations() {
        cities = new TreeSet<>();
    }

    // Metoda do dodawania miasta
    public void addCity(String city) {
        cities.add(city);
    }

    // Metoda do wyświetlania miast
    public void displayCities() {
        for (String city : cities) {
            System.out.println(city);
        }
    }
}
Główna klasa aplikacji

Teraz utworzymy główną klasę aplikacji, która wykorzysta naszą klasę TravelDestinations do dodawania i wyświetlania nazw miast.

public class Main {
    public static void main(String[] args) {
        TravelDestinations destinations = new TravelDestinations();
        
        destinations.addCity("Warszawa");
        destinations.addCity("Kraków");
        destinations.addCity("Gdańsk");
        destinations.addCity("Wrocław");
        // Próba dodania duplikatu
        destinations.addCity("Kraków"); 

        System.out.println("Odwiedzone miasta:");
        destinations.displayCities();
    }
}

W tym przykładzie, próbujemy dodać miasto “Kraków” dwa razy, ale dzięki wykorzystaniu TreeSet, miasto to pojawi się na liście tylko raz.

Zalety TreeSet

  • Unikalność: TreeSet automatycznie usuwa duplikaty, dzięki czemu wszystkie elementy w zestawie są unikalne.
  • Automatyczne sortowanie: Elementy są przechowywane w porządku rosnącym, co ułatwia ich przeglądanie i wyszukiwanie.
  • Efektywność operacji: Operacje dodawania, usuwania i wyszukiwania są wykonywane efektywnie dzięki zastosowaniu drzewa czerwono-czarnego.

Podsumowanie

TreeSet jest potężnym narzędziem w Java Collections Framework, które pozwala na przechowywanie unikalnych elementów w uporządkowany sposób. Dzięki swoim właściwościom jest idealnym wyborem dla aplikacji, które wymagają szybkiego dostępu do posortowanych i unikalnych danych. W naszym przykładzie, wykorzystanie TreeSet do zarządzania listą odwiedzonych miast zapewnia, że lista ta jest zawsze uporządkowana i nie zawiera duplikatów, co znacznie ułatwia zarządzanie i prezentację danych.

Jeżeli chcesz przyśpieszyć swoją naukę tworzenia stron chciałbym polecić mój kurs video Java w którym nauczysz się tego języka od podstaw do zaawansowanych jego aspektów.

Scroll to Top