Menu
Coddy logo textTech

Typy dopuszczające null

Część sekcji Podstawy ścieżki Kotlin w Coddy. Lekcja 13 z 93.

Czasami naprawdę potrzebujesz zmiennej, która może przechowywać „nic”. Na przykład drugie imię użytkownika może nie istnieć lub wyszukiwanie może nie zwrócić żadnych wyników. Kotlin umożliwia to za pomocą typów dopuszczających wartość null.

Aby typ mógł przyjmować wartość null, dodaj ? po nazwie typu:

fun main() {
    var middleName: String? = "Marie"
    middleName = null  // Teraz jest to dozwolone!
    
    val age: Int? = null  // Może przechowywać wartość typu Int lub null
}

? mówi Kotlinowi: „Ta zmienna może mieć wartość null, więc obchodź się z nią ostrożnie”. Bez ? typ nie dopuszcza wartości null i nigdy nie może jej przechowywać.

Ważne: Typy dopuszczające wartość null i niedopuszczające wartości null różnią się. Nie możesz bezpośrednio przypisać wartości dopuszczającej wartość null do zmiennej, która jej nie dopuszcza:

fun main() {
    val nullableName: String? = "Alice"
    val regularName: String = nullableName  // Błąd!
}

To rozróżnienie jest celowe. Wymusza obsłużenie możliwości wystąpienia wartości null przed użyciem tej wartości. W kolejnych lekcjach poznasz bezpieczne sposoby, jakie Kotlin udostępnia do pracy z wartościami dopuszczającymi null.

challenge icon

Wyzwanie

Łatwy

Zadeklaruj następujące zmienne dopuszczające wartość null:

  • Zmienna String dopuszczająca wartość null o nazwie nickname z wartością "Shadow"
  • Zmienna Int dopuszczająca wartość null o nazwie age z wartością null
  • Zmienna Double dopuszczająca wartość null o nazwie balance z wartością 99.5

Następnie wypisz wszystkie trzy wartości w osobnych wierszach za pomocą println().

Pamiętaj, aby umieścić ? po nazwie typu, aby umożliwić wartość null. Wypisanie wartości null wyświetli słowo null.

Spróbuj swoich sił

fun main() {
    // TODO: Zadeklaruj następujące zmienne dopuszczające wartość null:
    // 1. Zmienna typu String dopuszczająca wartość null, o nazwie 'nickname' i wartości "Shadow"
    // 2. Zmienna typu Int dopuszczająca wartość null, o nazwie 'age' i wartości null
    // 3. Zmienna typu Double dopuszczająca wartość null, o nazwie 'balance' i wartości 99.5
    
    // Następnie wypisz wszystkie trzy wartości w osobnych wierszach
    
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Edytor online Kotlin