Ответ
val предпочтительнее var, потому что обеспечивает иммутабельность (неизменяемость), что делает код более предсказуемым и безопасным. С val значение присваивается один раз и не может быть изменено, уменьшая риск ошибок из-за неожиданных изменений состояния. Это особенно полезно в многопоточных средах, где неизменяемые данные исключают гонки данных.
Пример:
val name = "Alice" // Неизменяемое
var age = 25 // Изменяемое
name = "Bob" // Ошибка компиляции
age = 26 // Корректно
Используйте var только когда значение действительно должно изменяться.