Junior — Middle
Como pode implementar a criação de um novo objeto que possui três campos do data class original e, adicionalmente, dois campos na forma de objetos?
sobes.tech IA
Resposta da IA
Em Kotlin, para criar um novo objeto que contém três campos do data class original e adicionalmente dois campos-objetos, pode usar a cópia com a função copy() e a extensão da classe ou criar uma nova classe com os campos necessários.
Exemplo:
data class Original(val a: Int, val b: String, val c: Double)
data class Additional(val x: String, val y: Int)
// Nova classe que combina os campos
class Extended(
val a: Int,
val b: String,
val c: Double,
val additional1: Additional,
val additional2: Additional
)
// Criação a partir do objeto original
val original = Original(1, "texto", 2.0)
val add1 = Additional("obj1", 10)
val add2 = Additional("obj2", 20)
val extended = Extended(original.a, original.b, original.c, add1, add2)
Se precisar de exatamente um data class com cópia, pode fazer assim:
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)
Dessa forma, combina os campos da classe original com os novos objetos.