> Что такое деструктуризация в Kotlin и как она работает (Kotlin, Android)

Уровень: junior · Роль: mobile · Категория: Технические вопросы

Компании: Совкомбанк, Rutube

Стек: Kotlin, Android

> Пример ответа

Деструктуризация в Kotlin - это механизм, позволяющий разложить объект на отдельные компоненты и присвоить их переменным за один шаг. Она работает за счет соглашения о компонентах: для каждого свойства, которое вы хотите деструктурировать, компилятор автоматически генерирует функции component1(), component2() и т.д. (для data-классов) или вы можете определить их вручную.

Пример с data-классом:

data class User(val name: String, val age: Int)

val user = User("Анна", 25)
val (name, age) = user  // деструктуризация
println("$name, $age")  // Анна, 25

Здесь name получает значение user.component1(), а age - user.component2().

Деструктуризация также работает с парами (Pair), тройками (Triple), циклами for (например, по карте), лямбда-выражениями и даже с функциями, возвращающими несколько значений через Pair/Triple. В Android часто используется для обработки результатов запросов или разбора данных из Room/Binding.

Важно: если вам не нужны все компоненты, используйте _ для пропуска:

val (_, age) = user

> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?

Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью