Sobes.tech
Назад к вопросам
Junior — Middle
112

Какие преимущества и особенности различных типов коллекций в Kotlin ты знаешь?

Компании, где спрашивали
AstonAston

Ответ от нейросети

sobes.tech AI

В Kotlin есть несколько основных типов коллекций, которые делятся на изменяемые (Mutable) и неизменяемые (Read-only).

  • List — упорядоченный набор элементов. В неизменяемом варианте (List) нельзя изменять содержимое, а в изменяемом (MutableList) можно добавлять, удалять и изменять элементы.
  • Set — коллекция уникальных элементов. Set — неизменяемый, MutableSet — изменяемый.
  • Map — коллекция пар ключ-значение. Map — неизменяемый, MutableMap — изменяемый.

Особенности:

  • Неизменяемые коллекции безопасны для многопоточного доступа без синхронизации.
  • Изменяемые коллекции позволяют динамически менять содержимое.
  • Kotlin предоставляет удобные функции расширения для работы с коллекциями (фильтрация, преобразование, агрегация).

Пример:

val readOnlyList: List<Int> = listOf(1, 2, 3)
val mutableList: MutableList<Int> = mutableListOf(1, 2, 3)
mutableList.add(4) // теперь список содержит 1, 2, 3, 4

val readOnlySet: Set<String> = setOf("a", "b")
val mutableSet: MutableSet<String> = mutableSetOf("a", "b")
mutableSet.add("c")

val readOnlyMap: Map<String, Int> = mapOf("one" to 1, "two" to 2)
val mutableMap: MutableMap<String, Int> = mutableMapOf("one" to 1)
mutableMap["two"] = 2