В какой тип мапятся переменные из Kotlin в Java

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

Ответ

В Kotlin примитивные типы (Int, Boolean и т.д.) мапятся в соответствующие примитивы Java (int, boolean).

Nullable-типы (Int?, Boolean?) мапятся в классы-обертки Java (Integer, Boolean).

Коллекции:

  • Listjava.util.List (read-only)
  • MutableListjava.util.List (изменяемый)
  • Аналогично для Set/Map

Пример:

// Kotlin
fun process(intVal: Int, nullableInt: Int?, list: List<String>) 

// Java эквивалент
void process(int intVal, Integer nullableInt, List<String> list)