Junior — Middle
Was sind die Unterschiede zwischen den Schlüsselwörtern const val und val in Kotlin?
sobes.tech KI
Antwort von AI
In Kotlin bezeichnet das Schlüsselwort val eine unveränderliche Variable (nur lesbar), deren Wert einmal bei der Initialisierung zugewiesen werden kann, aber der Wert selbst während der Laufzeit berechnet werden kann.
const val ist eine Konstante zur Kompilierungszeit, die vom primitiven Typ oder String sein muss und mit einem Wert initialisiert werden muss, der zur Kompilierungszeit bekannt ist. Solche Konstanten können beispielsweise in Annotationen oder als Parameter verwendet werden, die Konstanten erfordern.
Hauptunterschiede:
const valist immer eine statische Konstante, die auf Klassenebene zugänglich ist (nur in Objekten oder auf Top-Level).valist eine normale unveränderliche Eigenschaft, die dynamisch berechnet werden kann.
Beispiel:
const val MAX_COUNT = 10 // Konstante zur Kompilierungszeit
val currentTime = System.currentTimeMillis() // Wert wird zur Laufzeit berechnet