Sobes.tech
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.