Junior — Middle
Можете ли да обясните основните разлики между структурите данни HashMap и HashSet и ситуации, в които се използват?
sobes.tech AI
Отговор от AI
HashMap и HashSet са структури от данни от Java Collections Framework, базирани на хеширане, но служат за различни цели:
-
HashMap е колекция от двойки "ключ-стойност". Тя съхранява уникални ключове и свързаните с тях стойности. Позволява бързо търсене, добавяне и изтриване на елементи по ключ.
-
HashSet е колекция от уникални елементи без ключове и стойности. По същество, това е HashMap, където стойностите не са важни, а се съхраняват само ключовете (елементите).
Кога да използваме:
- HashMap — когато трябва да съхраняваме и бързо да получаваме данни по ключ, например речник или кеш.
- HashSet — когато важна е уникалността на елементите и бързото търсене, например проверка дали елемент вече е срещан.
Пример:
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");