Сравнение с Java
Некоторые проблемы Java, решённые в Kotlin
Kotlin исправляет ряд проблем, свойственных Java:
Ссылочные значения null контролируются системой типов.
Массивы в Kotlin являются неизменяемыми
Kotlin имеет правильные типы функций, в отличие от SAM-преобразований Java
Вариативность в месте использования без диких карт
Kotlin не имеет проверенных исключений
Что есть в Java, но нет в Kotlin
Примитивные типы, которые не являются классами. Байткод использует примитивы там, где это возможно, но они не доступны явно.
Статические члены заменены на объекты-компаньоны, функции верхнего уровня, расширяющие функции или @JvmStatic.
Дикие типы заменены на вариативность в месте объявления и проекции типов.
Тернарный оператор
a ? b : cзаменён на выражение if.
Что есть в Kotlin, но нет в Java
Выражения лямбда + Встроенные функции = производительные пользовательские управляющие структуры
Отдельные интерфейсы для неизменяемых и изменяемых коллекций
Что дальше?
Узнайте, как выполнять обычные задачи со строками в Java и Kotlin.
© 2010–2022 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/docs/comparison-to-java.html