Junior
Quali variabili possono essere utilizzate in una classe di dati (data class)?
sobes.tech AI
Risposta dell'AI
In una data class possono essere utilizzati:
val(proprietà di sola lettura): La proprietà viene inizializzata alla creazione dell'oggetto e non può essere modificata successivamente. Fa parte dei metodi generati automaticamente (equals(),hashCode(),toString(),copy).var(proprietà mutabile): La proprietà può essere modificata dopo la creazione dell'oggetto. Fa anch'essa parte dei metodi generati.- Proprietà dichiarate nel corpo della classe: Queste proprietà non fanno parte delle proprietà principali della data class e non partecipano alla generazione dei metodi standard.
Esempio:
data class User(
val id: Int, // solo lettura, parte delle proprietà principali
var name: String, // mutabile, parte delle proprietà principali
val creationTime: Long = System.currentTimeMillis() // solo lettura, con valore di default, parte delle proprietà principali
) {
val isAdmin: Boolean = false // solo lettura, non parte delle proprietà principali, non viene inclusa in equals/hashCode/toString
}