Kotlin dasturlash tilida 'when' ifodasining tushunchasini tushuntiring.
sobes.tech AI
AIdan javob
Kotlin'da when, boshqa tillardagi an'anaviy switch ni o'rnini bosadigan universal struktural operator hisoblanadi. U ifoda sifatida (qiymat qaytaradigan) yoki operator sifatida ishlatilishi mumkin.
Asosiy imkoniyatlar:
-
Qiymatlarni taqqoslash: Aniq qiymat bilan mos kelish.
fun describe(obj: Any): String = when (obj) { 1 -> "Bir" "Hello" -> "Salom" is Long -> "Uzoq" !is String -> "Qator emas" else -> "Noma'lum" } -
Turi tekshiruvi (
is/!is): Ma'lumot turlari bilan mos kelish. -
Kirish tekshiruvi (
in/!in): Oraliq yoki to'plamga kirishni tekshirish.fun checkRange(x: Int): String = when (x) { in 1..10 -> "Oraliqda ijobiy raqam" !in 10..20 -> "Ikkinchi oraliqda emas" else -> "Yuqoridagilardan emas" } -
Argumentsiz:
if-else if-elseketma-ketligining yanada moslashuvchan o'rnini bosadi. Shartlar ketma-ket baholanadi.fun checkBoolean(x: Boolean, y: Boolean): String = when { x && y -> "Ikkala to'g'ri" !x && !y -> "Ikkala noto'g'ri" else -> "Aralash" } -
Qiymatni qaytarish: Agar
whenifoda sifatida ishlatilsa, u to'liq bo'lishi kerak (barcha mumkin bo'lgan holatlarni qamrab olishi yokielsebo'lagi bo'lishi kerak).
when an'anaviy switch ga nisbatan kodning o'qilishi va xavfsizligini oshiradi.