Kotlin предоставляет следующие фундаментальные типы данных:
Int, Long, Short, Byte — целые числаFloat, Double — числа с плавающей точкойBoolean — значения true или falseChar — одиночный символString — последовательность символовВ Java есть чёткое разделение между примитивными типами (например, int, boolean) и их классами-обёртками (например, Integer, Boolean). Это часто требует от разработчиков ручного управления боксингом и анбоксингом.
В Kotlin на уровне языка нет примитивных типов — все типы рассматриваются как объекты. Например, ты можешь вызывать методы прямо на Int:
val length = 42.toString()
Хотя в исходном коде Kotlin всё выглядит как объект, компилятор достаточно умён для оптимизации этих типов под капотом. Где только возможно, Kotlin компилирует их в JVM-примитивы для лучшей производительности, избегая лишних аллокаций объектов.
Этот подход даёт Kotlin лучшее из обоих миров:
В Kotlin все фундаментальные типы данных рассматриваются как объекты на уровне языка, но компилятор оптимизирует их до примитивов JVM для повышения производительности, когда это возможно.
Новый — ещё не проверен сообществом
Вы