Kotlin Dersleri #5 - When
Kotlin derslerine when ile devam ediyoruz
When kelimesini İngilizce'den Türkçe'ye; -dığı zaman olarak çevirebiliriz.
Elimizdeki bir değişkenin değerine göre farklı işlemler yaptırmamızı; farklı kod bloklarının çalıştırılmasını sağlar.
Aşağıdaki örnekte nasıl kulanıldığını detaylı görebilirsiniz.
/** * www.emreakcadag.com */ val deger = 1 when (deger) { 1 -> { println("deger = 1") } 2 -> { println("deger = 2") } else -> { println("deger 1 ve 2 sayılarından birine eşit değildir.") } }
Örnekte deger adında bir integer değişken tanımladık.
Ardından when ile birlikte kullanıp tek tek istediğimiz değerlere göre -> işaretlerini kullanarak blokları oluşturduk.
Deger değişkeninin aldığı değere göre;
- 1 ise deger = 1
- 2 ise deger = 2
- 1 ve 2 değerlerinden herhangi biri değil ise deger 1 ve 2 sayılarından birine eşit değildir. çıktıları ekrana yazdırılacaktır.
Bu yapı Java - Php - C - C# gibi dillerde switch - case olarak karşımıza çıkar.
Ayrıca kullanımı switch - case yapısına nazaran oldukça kolaydır. Kodun daha okunaklı görünmesi ve fazla - gereksiz kod kalabalığından kurtulmak için kullanılır.
Eğer when kullanmasaydık her koşul için ayrı ayrı if ve else kullanarak karşılaştırma yapmak zorunda kalacaktık.
Örneklerle devam edelim.
/** * www.emreakcadag.com */ when (x) { in 1..10 -> print("x 1 ve 10 arasında.") in validNumbers -> print("x geçerli bir sayı değil.") !in 10..20 -> print("x 10 ve 20 arasındaki sayılardan biri değil.") else -> print("bunlardan hiçbiri değil.") }
/** * www.emreakcadag.com */ val deger = 2 when (deger) { 1, 2 -> { println("deger 1 veya 2'ye eşittir.") } else -> { println("deger 1 ve 2 sayılarından birine eşit değildir.") } }
/** * www.emreakcadag.com */ val x = 5 when { x.isOdd() -> print("x tek sayıdır.") x.isEven() -> print("x çift sayıdır.") else -> print("Geçersiz.") }
Gördüğünüz üzere when kullanımı oldukça basit. Bir sonraki derste görüşmek üzere.
Sorularınızı yorum bölümünden iletebilirsiniz.