Sobes.tech
Middle

Proč je kolekce Map jedinečná v hierarchii kolekcí?

sobes.tech AI

Odpověď od AI

Map není kolekce v obvyklém smyslu. Collection v Javě představuje skupinu objektů (prvků). Nicméně, Map ukládá páry "klíč-hodnota", kde je každý klíč unikátní. To ji odlišuje od rozhraní, která dědí z Collection (například List, Set, Queue), která pracují s jednotlivými prvky.

Hierarchie vypadá takto:

  • Iterable
    • Collection
      • List
      • Set
      • Queue
    • Map

Map má své vlastní unikátní metody pro práci s páry:

  • put(K key, V value)
  • get(Object key)
  • remove(Object key)
  • containsKey(Object key)
  • containsValue(Object value)
  • keySet() - vrací Set klíčů
  • values() - vrací Collection hodnot
  • entrySet() - vrací Set párů "klíč-hodnota" (Map.Entry)

Příklad použití:

// Vytvoření HashMap
Map<String, Integer> studentScores = new HashMap<>();

// Přidání prvků
studentScores.put("Alice", 95);
studentScores.put("Bob", 88);
studentScores.put("Charlie", 95); // Hodnota se může opakovat, klíč ne

// Získání hodnoty podle klíče
int score = studentScores.get("Alice"); // 95

Tedy, Map se nachází paralelně s Collection v hierarchii Iterable, protože organizuje data jiným způsobem, založeným na párech "klíč-hodnota", a nikoliv na skupině jednotlivých prvků.