Junior — Middle
Valoarea de tip val este imutabilă după declarare?
sobes.tech AI
Răspuns de la AI
În Kotlin, cuvântul cheie val indică o referință imuabilă, adică, după atribuirea unei valori unei variabile declarate cu val, nu se poate schimba această referință către un alt obiect. Cu toate acestea, acest lucru nu înseamnă că obiectul la care face referire val este imuabil. Dacă obiectul este modificabil (de exemplu, MutableList), starea sa internă poate fi schimbată, chiar dacă referința val nu se schimbă.
Exemplu:
val list = mutableListOf(1, 2, 3)
list.add(4) // Acest lucru este permis, conținutul listei se schimbă
// list = mutableListOf(5, 6) // Eroare: nu se poate reatribui un `val`
Prin urmare, val garantează imuabilitatea referinței, dar nu și a obiectului.