Měli jsme možnost se seznámit s třídou ArrayList jako jednou z pokročilejších datových struktur v Javě. Nyní se podíváme na další významnou datovou strukturu, která nám umožňuje efektivně mapovat klíče na hodnoty. Tuto funkcionalitu plní třída HashMap. Třída HashMap poskytuje flexibilitu a rychlost při práci s daty, které jsou uloženy ve formě dvojic (klíč, hodnota). V tomto odstavci si přiblížíme základní koncepty třídy HashMap, zjistíme, jak ji používat a prozkoumáme její výhody oproti jiným způsobům ukládání dat.

Výhody využití třídy HashMap:

  1. Rychlý přístup k datům: Třída HashMap umožňuje rychlý přístup k hodnotám na základě klíče. To znamená, že můžeme rychle získat hodnotu, aniž bychom museli procházet všechny prvky.

  2. Dynamická velikost: Stejně jako třída ArrayList, i HashMap má dynamickou velikost, což znamená, že může růst a zmenšovat se dle potřeby

  3. Jedinečné klíče: Klíče v HashMapě jsou jedinečné, což znamená, že každý klíč může mít pouze jednu hodnotu. To je užitečné pro ukládání asociací mezi různými prvky.

Nevýhody použití třídy HashMap:

  1. Nevypořádá se s řazením: HashMap neskladuje prvky ve specifickém pořadí. Pokud potřebujete prvky seřadit, musíte použít jinou datovou strukturu, například třídu TreeMap.

  2. Mírně větší paměťová náročnost: Stejně jako u třídy ArrayList může třída HashMap vyžadovat více paměti kvůli dynamickému zvětšování kapacity.

Obecné založení HashMapu:

// Vždy je nutné knihovnu importovat do programu import java.util.HashMap; // Založení instance třídy HashMap pro mapování řetězců na čísla HashMap<String, Integer> mapa = new HashMap<>();

Syntaxe pro vložení a získání hodnot z HashMapu:

// Vložení hodnoty do HashMapu mapa.put("klíč", hodnota); // Získání hodnoty z HashMapu na základě klíče int hodnota = mapa.get("klíč");

Odebírání prvků z HashMapu:

// Odebrání prvku z HashMapu na základě klíče mapa.remove("klíč");

Zjištění, zda klíč existuje v HashMapu:

// Zjištění, zda klíč existuje v HashMapu boolean existuje = mapa.containsKey("klíč");

Iterace HashMapem pomocí cyklu:

for (String klic : mapa.keySet()) { int hodnota = mapa.get(klic); System.out.println("Klíč: " + klic + ", Hodnota: " + hodnota); }

Tímto jsme se dostali na další úroveň v našem porozumění datovým strukturám v Javě. Třída HashMap je silným nástrojem pro ukládání a manipulaci s daty, zejména když potřebujeme provádět vyhledávání na základě klíče.

Naposledy změněno: Středa, 6. září 2023, 21.39