Ответ
Map хранит пары ключ-значение, где каждый ключ уникален, а коллекции (List, Set) содержат только отдельные элементы.
Основные отличия:
- Доступ: В Map доступ по ключу (O(1) в HashMap), в List — по индексу, в Set — только проверка наличия.
- Дубликаты: Map не допускает дубликаты ключей, List — разрешает, Set — запрещает дубликаты элементов.
- Итерация: Map требует работы с
entrySet(),keySet()илиvalues(), коллекции итерируются напрямую.
Пример:
val map = mapOf("a" to 1, "b" to 2) // Доступ: map["a"] → 1
val list = listOf(1, 2) // Доступ: list[0] → 1
val set = setOf(1, 2) // Проверка: set.contains(1) → true
Map удобен для ассоциативных данных (например, кеширования), коллекции — для линейных операций.