Junior — Middle
Quali metodi automatici crea il compilatore per la data class e a cosa servono?
sobes.tech AI
Risposta dell'AI
In Kotlin, per le data class, il compilatore genera automaticamente diversi metodi utili che semplificano il lavoro con gli oggetti:
equals()— per confrontare gli oggetti in base al valore di tutte le proprietà.hashCode()— per ottenere un codice hash coerente conequals().toString()— restituisce una rappresentazione in stringa dell'oggetto con l'elenco di tutte le proprietà.copy()— crea una copia dell'oggetto con la possibilità di modificare alcune proprietà.- Funzioni
componentN()— per la destrutturazione dell'oggetto in variabili separate.
Esempio:
data class User(val name: String, val age: Int)
val user1 = User("Alice", 30)
val user2 = user1.copy(age = 31)
println(user1) // User(name=Alice, age=30)
println(user1 == user2) // false
val (name, age) = user2
println(name) // Alice
println(age) // 31
Questi metodi semplificano il lavoro con oggetti immutabili e rendono il codice più espressivo.