Какие знаешь структуры данных в Kotlin

«Какие знаешь структуры данных в Kotlin» — вопрос из категории Kotlin, который задают на 24% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В Kotlin доступны стандартные структуры данных из Java, а также удобные Kotlin-аналоги:

Коллекции:

  • List (неизменяемый) / MutableList (изменяемый) - listOf(), mutableListOf()
  • Set / MutableSet - setOf(), mutableSetOf()
  • Map / MutableMap - mapOf(), mutableMapOf()

Пример:

val numbers = mutableListOf(1, 2, 3)
numbers.add(4) // [1, 2, 3, 4]

Другие структуры:

  • Array - фиксированный размер
  • Sequence - ленивые вычисления
  • Pair/Triple - для хранения пар/троек значений
  • Делегированные свойства (lazy, observable)

Kotlin также предоставляет extension-функции для работы с коллекциями (filter, map, groupBy и т.д.), что делает код более выразительным.