W Kotlinie, podobnie jak w innych językach programowania, zmienne są podstawowym sposobem przechowywania danych. Kotlin wprowadza kilka kluczowych koncepcji, które pomagają zarządzać danymi w sposób bardziej bezpieczny i wydajny. W Kotlinie wyróżniamy dwa główne typy zmiennych: val
i var
.
Typy zmiennych
val
(Value): Jest to skrót od „value” i wskazuje na zmienną, której wartość nie może być zmieniona po przypisaniu (niemutowalna). Inaczej mówiąc, jest to odpowiednik stałej. Używajval
, kiedy wartość zmiennej nie powinna się zmieniać po jej inicjalizacji.var
(Variable): Jest to skrót od „variable” i oznacza zmienną, której wartość może być zmieniona (mutowalna).var
pozwala na zmianę przypisanej wartości w trakcie działania programu.
Deklarowanie zmiennych
Deklarowanie zmiennej w Kotlinie jest proste. Możesz jasno określić typ danych, ale w większości przypadków kompilator jest w stanie wywnioskować typ na podstawie przypisanej wartości.
val liczba: Int = 10 // niemutowalna zmienna typu Int
var tekst: String = "Witaj" // mutowalna zmienna typu String
// Kompilator Kotlin potrafi wywnioskować typ zmiennej, więc nie musisz go jawnie podawać
val liczbaPi = 3.14
var powitanie = "Hej"
Przykłady
1. Zmienne val
– niemutowalne
val nazwa = "Kotlin"
// nazwa = "Java" // To spowoduje błąd, ponieważ 'val' nie może być zmienione po inicjalizacji
2. Zmienne var
– mutowalne
var wiek = 30
wiek = 31 // To jest dozwolone, ponieważ 'var' można zmieniać
3. Typy danych
Kotlin obsługuje różne typy danych, w tym liczby całkowite (Int
), liczby zmiennoprzecinkowe (Double
, Float
), znaki (Char
), ciągi znaków (String
) i wiele innych.
val liczbaCalkowita: Int = 100
var liczbaZmiennoprzecinkowa: Double = 99.99
val znak: Char = 'A'
val ciagZnakow: String = "Kotlin jest super!"
Zmienne globalne i lokalne
- Zmienne globalne są zmiennymi zadeklarowanymi poza funkcjami i są dostępne w całym pliku.
- Zmienne lokalne są zmiennymi zadeklarowanymi wewnątrz bloków kodu, takich jak funkcje, i są dostępne tylko w ramach tych bloków.
Nullability
Kotlin wprowadza system, który pozwala na unikanie błędów związanych z wartościami null
poprzez rozróżnienie typów zmiennych na te, które mogą przyjmować wartość null
, i te, które nie mogą.
var mozeBycNull: String? = null // Zmienna może przechowywać null
var nieMozeBycNull: String = "Kotlin" // Zmienna nie może przechowywać null, próba przypisania null spowoduje błąd
Dzięki tym cechom, Kotlin pomaga tworzyć bardziej bezpieczny kod, zmniejszając ryzyko wystąpienia NullPointerException
. Pamiętaj, że efektywne korzystanie ze zmiennych to klucz do pisania czytelnego i wydajnego kodu. Praktykuj używanie różnych typów zmiennych i obserwuj, jak wpływają one na działanie twoich programów.