Sobes.tech
Junior — Middle

Milyen műveleteket és lehetőségeket kínál a data class használata a programozási nyelvben?

sobes.tech MI

Válasz az MI-től

A Kotlin adat osztály egy speciális osztály, amely adat tárolására szolgál. Amikor egy osztályt a data kulcsszóval deklarálunk, a fordító automatikusan generál néhány hasznos metódust:

  • equals() és hashCode() — az objektumok érték szerinti összehasonlításához, nem hivatkozás szerint.
  • toString() — az objektum tartalmának kényelmes megjelenítéséhez.
  • copy() — az objektum másolatának létrehozásához, bizonyos tulajdonságok módosításával.
  • componentN() függvények — az objektum destrukturálásához.

Példa:

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

fun main() {
    val user1 = User("Ivan", 30)
    val user2 = user1.copy(age = 31)
    println(user1) // User(name=Ivan, age=30)
    println(user2) // User(name=Ivan, age=31)

    val (name, age) = user1
    println("Név: $name, Kor: $age")
}

Így a data osztály leegyszerűsíti az objektumokkal való munkát, amelyek elsősorban adatokat tartalmaznak, csökkentve a sablonkódok számát.