Программисты больше не нужны!
Нужны ИИ инженеры! Хотите научиться? Вступайте в канал!
⊗ktOpDcDf 69 of 123 menu
◀ ▶

Значения по умолчанию в data class в Kotlin

Параметры первичного конструктора data class могут иметь значение по умолчанию после знака = - правило то же, что для обычного класса в разделе «Значения по умолчанию». При создании объекта такие аргументы можно не передавать:

data class User(val name: String, val active: Boolean = true)

Создадим объекты:

val a = User("Ann") val b = User("Bob", false) println(a.active) println(b.active)

Пропущенные параметры нужно оставлять в конце списка или указывать имена явно, иначе компилятор не поймёт, какое поле заполняется:

data class Point(val x: Int = 0, val y: Int = 0)

Создадим объекты:

val origin = Point() val p = Point(x = 5) println(origin) println(p)

Значения по умолчанию участвуют в copy, equals и toString так же, как обычные поля. Объект без явно переданного аргумента хранит именно default из объявления:

data class Tag(val code: String, val level: Int = 1)

Создадим объект:

val t = Tag("go") println(t.copy(level = 2))

Сделайте data class Note с полями text и pinned; для pinned задайте false по умолчанию. Создайте заметку только с текстом "todo" и выведите на экран поле pinned.

Сделайте data class Margin с полями top, right, bottom, left; для всех сторон задайте 8 по умолчанию. Создайте объект с top = 16 и выведите его в консоль.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить