Sobes.tech
Junior — Middle

Aké sú rozdiely medzi rozhraniami Collection a Map v Jave a na čo slúžia?

sobes.tech AI

Odpoveď od AI

Collection a Map sú dva hlavné rozhrania v Jave na prácu so zbierkami, ale majú odlišné účely:

  • Collection je základné rozhranie pre skupiny objektov, ktoré je možné prechádzať. Zahŕňa zoznamy (List), množiny (Set) a fronty (Queue). Hlavná myšlienka je ukladať súbor prvkov, pričom každý prvok je objekt.

  • Map je dátová štruktúra na ukladanie dvojíc "kľúč-hodnota". Nezdedí z Collection, pretože nie je len súbor prvkov, ale mapovanie kľúčov na hodnoty.

Na čo slúžia:

  • Collection je užitočná, keď potrebujete pracovať so súborom prvkov, napríklad zoznam používateľov alebo súbor jedinečných hodnôt.
  • Map je užitočná, keď potrebujete rýchlo nájsť hodnotu podľa kľúča, napríklad na uloženie nastavení podľa názvu parametra.

Príklad:

// Príklad Collection
List<String> list = new ArrayList<>();
list.add("jablko");
list.add("banán");

// Príklad Map
Map<String, Integer> map = new HashMap<>();
map.put("jablko", 3);
map.put("banán", 5);

System.out.println(list.get(0)); // jablko
System.out.println(map.get("banán")); // 5