LinkedList w Java

LinkedList w Java to struktura danych, która jest częścią Java Collections Framework. LinkedList jest implementacją listy wiązanej, która może przechowywać dowolny typ obiektów. Pozwala na dynamiczne dodawanie i usuwanie elementów, bez potrzeby redymensjonowania, jak to ma miejsce w przypadku tablic. W tej lekcji przyjrzymy się, jak tworzyć i manipulować LinkedList w Javie, na przykładzie listy przechowującej dane o stacjach meteorologicznych.

Definicja klasy WeatherStation

Zacznijmy od zdefiniowania klasy WeatherStation, która będzie przechowywała informacje o nazwie stacji oraz średniej rocznej temperaturze.

public class WeatherStation {
    private String name; // Nazwa stacji
    private double averageAnnualTemperature; // Średnia roczna temperatura

    // Konstruktor
    public WeatherStation(String name, double temp) {
        this.name = name;
        this.averageAnnualTemperature = temp;
    }

    // Metoda zwracająca nazwę stacji
    public String getName() {
        return name;
    }

    // Metoda zwracająca średnią roczną temperaturę
    public double getAverageAnnualTemperature() {
        return averageAnnualTemperature;
    }
}

Praca z LinkedList

Teraz, gdy mamy klasę WeatherStation, możemy stworzyć LinkedList przechowującą obiekty tej klasy. Pokażemy, jak dodawać elementy do listy, jak iterować przez listę oraz jak usuwać elementy.

import java.util.LinkedList;

public class WeatherStationManager {
    public static void main(String[] args) {
        // Tworzenie LinkedList przechowującej stacje meteorologiczne
        LinkedList<WeatherStation> stations = new LinkedList<>();

        // Dodawanie stacji do listy
        stations.add(new WeatherStation("Alaska", -5.6));
        stations.add(new WeatherStation("Sahara", 30.0));
        stations.add(new WeatherStation("Syberia", -10.0));

        // Wyświetlanie informacji o stacjach
        for (WeatherStation station : stations) {
            System.out.println(station.getName() 
                  + " ma średnią roczną temperaturę " 
                  + station.getAverageAnnualTemperature() 
                  + " stopni Celsjusza.");
        }

        // Usuwanie stacji z listy
        stations.removeIf(s -> s.getName().equals("Sahara"));
        System.out.println("Po usunięciu, lista zawiera: ");
        stations.forEach(s -> System.out.println(s.getName()));
    }
}

Podsumowanie

W tej lekcji omówiliśmy, jak używać LinkedList w Javie, na przykładzie przechowywania i zarządzania danymi o stacjach meteorologicznych. LinkedList jest elastyczną strukturą danych, która umożliwia łatwe dodawanie i usuwanie elementów. Jest szczególnie użyteczna, gdy potrzebujemy dynamicznie zmieniać rozmiar kolekcji. LinkedList może być bardziej wydajna niż ArrayList przy częstym dodawaniu i usuwaniu elementów, szczególnie jeśli operacje te wykonujemy na początku lub w środku listy.

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