W kotlinie zawsze musimy określić czy nasze pole może się zmieniać w trakcie wykonania programy- var (variable ), czy też jego wartość będzie tylko do odczytu - val (value).
Do pola var możemy wielokrotnie przypisywać nową wartość:
var zmienna = 1
zmienna = 2
Do val wartość może być przypisany tylko raz:
val wartosc = 1
wartosc = 2 // BŁĄD!
Co nie oznacza że zawsze ta wartość będzie stała. Możemy np. zrobić coś takiego:
val teraz = LocalDateTime.now()
// przy wypisywaniu zawsze będzie inny wynik
println(teraz) // 2019-06-16T09:22:44.573
println(teraz) // 2019-06-16T09:22:44.673
Podsumowując var używamy gdy nasze pole będzie się zmieniać, val wtedy gdy potrzebujemy pola tylko do odczytu.