Junior — Middle
Come si può implementare la creazione di un nuovo oggetto che abbia tre campi del data class originale e, inoltre, due campi sotto forma di oggetti?
sobes.tech AI
Risposta dell'AI
In Kotlin, per creare un nuovo oggetto che contiene tre campi del data class originale e inoltre due campi-oggetto, si può usare la copia tramite la funzione copy() e l'estensione della classe o creare una nuova classe con i campi necessari.
Esempio:
data class Original(val a: Int, val b: String, val c: Double)
data class Additional(val x: String, val y: Int)
// Nuova classe che combina i campi
class Extended(
val a: Int,
val b: String,
val c: Double,
val additional1: Additional,
val additional2: Additional
)
// Creazione dall'oggetto originale
val original = Original(1, "testo", 2.0)
val add1 = Additional("obj1", 10)
val add2 = Additional("obj2", 20)
val extended = Extended(original.a, original.b, original.c, add1, add2)
Se si desidera un data class con copia, si può fare così:
data class Extended(
val a: Int,
val b: String,
val c: Double,
val additional1: Additional,
val additional2: Additional
)
val extended = Extended(original.a, original.b, original.c, add1, add2)
In questo modo, si combinano i campi della classe originale con i nuovi oggetti.