Junior — Middle
Il valore di tipo val è immutabile dopo la sua dichiarazione?
sobes.tech AI
Risposta dell'AI
In Kotlin, la parola chiave val indica un riferimento immutabile, cioè, dopo aver assegnato un valore a una variabile dichiarata con val, non è possibile modificare questa referenza a un altro oggetto. Tuttavia, ciò non significa che l'oggetto stesso a cui si riferisce val sia immutabile. Se l'oggetto è mutabile (ad esempio, MutableList), il suo stato interno può essere modificato, anche se la referenza val non cambia.
Esempio:
val list = mutableListOf(1, 2, 3)
list.add(4) // Questo è permesso, il contenuto della lista viene modificato
// list = mutableListOf(5, 6) // Errore: impossibile riassegnare un `val`
Pertanto, val garantisce l'immutabilità della referenza, ma non quella dell'oggetto.