0Pricing
Kotlin Multiplatform Academy · Lekcja

Pola nullable, domyślne i opcjonalne

Sprawne obsługiwanie brakującego lub częściowego JSON

Pola nullable, domyślne i opcjonalne to bezpłatna lekcja Kotlin Multiplatform Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Kotlin Multiplatform Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Kotlin Multiplatform Academy zawiera 4 lekcji w sumie.

Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.

JSON Is Often Incomplete

Real responses skip fields or send null. Your shared models must handle missing data without crashing either app.

Make a Field Nullable

Mark a property as nullable with a trailing question mark, and the serializer happily reads a JSON null into it.

@Serializable
data class User(val bio: String?)

Null vs Missing

A key set to null and a key that is simply absent are different cases, and the library treats each one distinctly.

Give a Default Value

A property with a default can be left out of the JSON entirely, and decoding fills in your fallback.

val role: String = "member"

Optional Equals Default

In kotlinx.serialization, an optional field just means one that has a default, so absence is never an error.

Required Fields Are Strict

A non-null property with no default is required. If the JSON omits it, decoding throws a clear exception.

Nullable With a Default

You can combine both: a nullable property that defaults to null tolerates a missing key and a null value alike.

val avatar: String? = null

Skip Null on Output

Set explicitNulls to false and the encoder omits null fields instead of writing them out as null.

Json { explicitNulls = false }

Tolerate Extra Keys

APIs add fields over time. Turn on ignoreUnknownKeys so new JSON keys never break your existing models.

Json { ignoreUnknownKeys = true }

Coerce Bad Values

With coerceInputValues, a null sent for a field that has a default falls back to that default instead of failing.

Json { coerceInputValues = true }

Resilient by Design

Combining nullable types, defaults and lenient config makes your shared parsing robust against messy real-world JSON.

Quick Check

How do you let a JSON key be safely omitted from a response?

Recap

Use nullable types and defaults for missing data, and tune Json with ignoreUnknownKeys, explicitNulls and coerceInputValues for resilient parsing.

Często zadawane pytania

Czy lekcja „Pola nullable, domyślne i opcjonalne” jest bezpłatna?

Tak — pełny tekst „Pola nullable, domyślne i opcjonalne” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Kotlin Multiplatform Academy, przejdź na CoddyKit PRO. Kurs Kotlin Multiplatform Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Pola nullable, domyślne i opcjonalne”?

Sprawne obsługiwanie brakującego lub częściowego JSON Ćwiczysz Kotlin Multiplatform Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Kotlin Multiplatform Academy?

Nie wymagamy żadnego doświadczenia. Kotlin Multiplatform Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Pola nullable, domyślne i opcjonalne”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Kotlin Multiplatform Academy?

Tak. Każda lekcja Kotlin Multiplatform Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Modele danych @Serializable
  2. @SerialName i własne mapowanie pól
  3. Pola nullable, domyślne i opcjonalne
  4. Podłączanie Serialization do Ktor
← Powrót do Kotlin Multiplatform Academy