Sobes.tech
Junior

Ինչպես իրականացնել և օգտագործել տվյալների դասերը Kotlin-ում?

sobes.tech AI

Պատասխան AI-ից

Маълумот класстары маалыматтарды сактоо үчүн колдонулат. Компилятор алар үчүн пайдалуу ыкмаларды, мисалы, equals(), hashCode(), toString(), copy() жана componentN() функцияларын автоматтык түрдө түзөт.

Ишке ашыруу: data префикси менен классты жарыялоо.

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

Колдонуу:

Мисал түзүү:

val user = User("Alice", 30)

Мүлктөргө жетүү:

val name = user.name // Alice
val age = user.age   // 30

Жасалган методдорду колдонуу:

println(user.toString()) // User(name=Alice, age=30)

башкаUser = User("Alice", 30)
println(user == anotherUser) // true (жасалган `equals()`)

жашыUser = user.copy(age = 31) // User(name=Alice, age=31)

колдонуучуАты, колдонуучуЖашы = user // Деструктуризация
println("Аты: $колдонуучуАты, Жашы: $колдонуучуЖашы") // Аты: Alice, Жашы: 30

Мүнөздөмөлөр:

  • Бардык негизги куруучу параметрлери val же var болушу керек.
  • Маалымат класстары abstract, open, sealed же inner болбойт.
  • Класстын денесиндеги мүлктөр методдордун (equals(), hashCode(), copy(), componentN()) түзүлүшүнө катышпайт.
data class Person(val name: String) {
    var height: Int = 0 // `equals()`, `hashCode()`, `copy()`, `componentN()`га катышпайт
}

val p1 = Person("Bob")
p1.height = 180
val p2 = Person("Bob")
p2.height = 190
println(p1 == p2) // true