Junior
Izskaidrojiet 'when' izteiksmes koncepciju Kotlin programmēšanas valodā.
sobes.tech AI
Atbilde no AI
Kotlin when ir universāls strukturālais operators, kas aizvieto klasisko switch citās valodās. To var izmantot kā izteiksmi (atgriežot vērtību) vai kā operatoru.
Galvenās iespējas:
-
Vērtību salīdzināšana: Atbilstība ar konkrētām vērtībām.
fun describe(obj: Any): String = when (obj) { 1 -> "Viens" "Hello" -> "Sveiciens" is Long -> "Ilgs" !is String -> "Nav virknes" else -> "Nezināms" } -
Tipa pārbaude (
is/!is): Atbilstība datu tipiem. -
Ietilpības pārbaude (
in/!in): Pārbaude, vai vērtība pieder diapazonam vai kolekcijai.fun checkRange(x: Int): String = when (x) { in 1..10 -> "Pozitīvs skaitlis diapazonā" !in 10..20 -> "Nav otrajā diapazonā" else -> "Neviens no iepriekšējiem" } -
Bez argumenta: Izmanto kā elastīgāku aizvietotāju
if-else if-elseķēdēm. Nosacījumi tiek novērtēti secīgi.fun checkBoolean(x: Boolean, y: Boolean): String = when { x && y -> "Abi ir patiesi" !x && !y -> "Abi ir nepatiesi" else -> "Sajaukts" } -
Vērtības atgriešana: Ja
whentiek izmantots kā izteiksme, tam jābūt izsmeļošam (jāaptver visi iespējamie gadījumi vai jābūtelsedaļai).
when uzlabo koda lasāmību un drošību salīdzinājumā ar tradicionālo switch.