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");