Какие знаешь объекты-обертки в Kotlin

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

Ответ

Kotlin предоставляет объекты-обёртки для примитивных типов, чтобы использовать их в nullable-контекстах или коллекциях. Основные:

  • Int?java.lang.Integer
  • Long?java.lang.Long
  • Double?java.lang.Double
  • Boolean?java.lang.Boolean
  • Char?java.lang.Character

Пример:

val nullableInt: Int? = null // Боксируется в Integer
val list: List<Int> = listOf(1, 2) // При компиляции использует int[]

Автобоксинг: Kotlin автоматически конвертирует примитивы в обёртки и обратно, когда это требуется (например, при передаче в Java-метод, ожидающий Integer).