Sobes.tech
Назад к вопросам
Junior — Middle
75

Разрешается ли использовать переменные (var) в параметрах конструктора data class в Kotlin?

Компании, где спрашивали
kode.ru

Ответ от нейросети

sobes.tech AI

В Kotlin в параметрах конструктора data class нельзя использовать модификатор var. Параметры конструктора data class по умолчанию являются val (иммутабельными) или var (мутабельными), но при объявлении параметров конструктора нужно явно указывать var или val.

Например, корректное объявление data class с var:

data class User(var name: String, val age: Int)

Если не указать var или val, параметры будут просто параметрами конструктора, но не свойствами класса, и data class не сможет сгенерировать необходимые методы (equals, hashCode, toString) для них.

Таким образом, использовать просто var без val или var в параметрах конструктора data class нельзя — нужно явно указывать var или val.