Junior
Kotlin proqramlaşdırma dilində 'when' ifadəsinin anlayışını izah edin.
sobes.tech Süni İntellekt
AI-dan cavab
Kotlin-də when, digər dillərdə klassik switch-in yerini tutan ümumi struktur operatorudur. O, ifadə kimi (dəyər qaytaran) və ya operator kimi istifadə oluna bilər.
Əsas imkanlar:
-
Dəyərlərin müqayisəsi: Müəyyən dəyərlərlə uyğunluq.
fun describe(obj: Any): String = when (obj) { 1 -> "Bir" "Hello" -> "Salam" is Long -> "Uzun" !is String -> "String deyil" else -> "Naməlum" } -
Növ yoxlaması (
is/!is): Məlumat növləri ilə uyğunluq. -
İnklüzivlik yoxlaması (
in/!in): Bir aralıq və ya kolleksiyaya daxil olub-olmadığını yoxlama.fun checkRange(x: Int): String = when (x) { in 1..10 -> "Müsbət ədəd aralıqda" !in 10..20 -> "İkinci aralıqda deyil" else -> "Yuxarıdakılardan heç biri" } -
Sitat olmadan: Daha çevik
if-else if-elsezənciri üçün əvəz kimi istifadə olunur. Şərtlər ardıcıllıqla qiymətləndirilir.fun checkBoolean(x: Boolean, y: Boolean): String = when { x && y -> "Hər ikisi doğru" !x && !y -> "Hər ikisi yanlış" else -> "Qarışıq" } -
Dəyər qaytarılması: Əgər
whenifadə kimi istifadə olunursa, o, tam olmalıdır (bütün mümkün hallar əhatə etməli və yaelsebloku olmalıdır).
when ənənəvi switch-ə nisbətən kodun oxunuşunu və təhlükəsizliyini artırır.