Sobes.tech
Junior — Middle

¿El valor de tipo val es inmutable después de su declaración?

sobes.tech AI

Respuesta de la IA

En Kotlin, la palabra clave val indica una referencia inmutable, es decir, después de asignar un valor a una variable declarada con val, no se puede cambiar esa referencia a otro objeto. Sin embargo, esto no significa que el objeto al que hace referencia val sea inmutable. Si el objeto es mutable (por ejemplo, MutableList), su estado interno puede cambiarse, a pesar de que la referencia val no cambie.

Ejemplo:

val list = mutableListOf(1, 2, 3)
list.add(4) // Esto es válido, se cambia el contenido de la lista

// list = mutableListOf(5, 6) // Error: no se puede reasignar un `val`

Por lo tanto, val garantiza la inmutabilidad de la referencia, pero no la del objeto.