Junior — Middle
Wie kann man die Erstellung eines neuen Objekts realisieren, das drei Felder des ursprünglichen Data Class enthält und zusätzlich zwei Felder in Form von Objekten?
sobes.tech KI
Antwort von AI
In Kotlin, um ein neues Objekt zu erstellen, das drei Felder des ursprünglichen data class enthält und zusätzlich zwei Objektfelder, kann man die Kopierfunktion copy() und die Klassen-Erweiterung verwenden oder eine neue Klasse mit den benötigten Feldern erstellen.
Beispiel:
data class Original(val a: Int, val b: String, val c: Double)
data class Additional(val x: String, val y: Int)
// Neue Klasse, die die Felder kombiniert
class Extended(
val a: Int,
val b: String,
val c: Double,
val additional1: Additional,
val additional2: Additional
)
// Erstellung aus dem Originalobjekt
val original = Original(1, "Text", 2.0)
val add1 = Additional("obj1", 10)
val add2 = Additional("obj2", 20)
val extended = Extended(original.a, original.b, original.c, add1, add2)
Wenn ein data class mit Kopieren benötigt wird, kann man es so machen:
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)
Auf diese Weise kombiniert man die Felder der ursprünglichen Klasse mit den neuen Objekten.