Каковы различия между 'val' и 'var' в Kotlin?

val объявляет неизменяемую (read-only) ссылку. После присвоения значения ей нельзя переприсвоить другое значение.

Короткий ответ

Что ответить на собеседовании

val объявляет неизменяемую (read-only) ссылку. После присвоения значения ей нельзя переприсвоить другое значение.

Подробный разбор

Ответ с пояснениями

val объявляет неизменяемую (read-only) ссылку. После присвоения значения ей нельзя переприсвоить другое значение.

var объявляет изменяемую (mutable) ссылку. Ее значение можно изменять в течение жизни переменной.

Пример:

fun main() {
    val readOnlyValue = 10 // Присвоено значение 10
    // readOnlyValue = 20 // Ошибка компиляции: Val cannot be reassigned

    var mutableValue = 30 // Присвоено значение 30
    mutableValue = 40 // Переприсвоено значение 40
    println(mutableValue) // Выведет 40
}

Использование val предпочтительнее, когда возможно, так как это повышает безопасность кода и часто делает его более предсказуемым.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее