Sobes.tech
Junior — Middle

Lze vysvětlit hlavní rozdíly mezi datovými strukturami HashMap a HashSet a situace jejich použití?

sobes.tech AI

Odpověď od AI

HashMap a HashSet jsou datové struktury z Java Collections Framework, založené na hashování, ale slouží různým účelům:

  • HashMap je kolekce párů "klíč-hodnota". Ukládá unikátní klíče a s nimi spojené hodnoty. Umožňuje rychlé hledání, přidávání a odstraňování prvků podle klíče.

  • HashSet je kolekce unikátních prvků bez klíčů a hodnot. V podstatě je to HashMap, kde hodnoty nejsou důležité, ukládají se pouze klíče (prvky).

Kdy používat:

  • HashMap — když je potřeba rychle ukládat a získávat data podle klíče, například slovník nebo cache.
  • HashSet — když je důležitá unikátnost prvků a rychlé hledání, například kontrola, zda se prvek již dříve vyskytl.

Příklad:

HashMap<String, Integer> map = new HashMap<>();
map.put("apple", 3);
map.put("banana", 5);

HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("banana");