Merhaba Arkadaşlar,
Mobilhanem.com sitemiz üzerinden anlattığımız Kotlin Derslerine bu dersimizde neredeyse tüm programlama dillerinde kullanılan ve çok önemli bir yapı olan if else koşul yapısından bahsedeceğiz. if ingilizcede eğer anlamına gelmektedir. Aynı şekilde programlama dillerinde de eğer anlamına gelmektedir. Genel yapısı aşağıdaki gibidir.
if Else Koşul Yapısı
Yukarıda gördüğünüz şemada koşul sağlanırsa koşul true dönecektir ve if bloğu içindeki işlemler yapılacaktır. Eğer false dönerse else bloğu içindeki işlemler yapılacaktır. Bunu kod olarak aşağıdaki gibi gösterebiliriz.
if Else
if(kosul){
//işlemler
}else{
//işlemler
}
if(kosul){ //işlemler }else{ //işlemler } |
Yukarıdaki koşul true ise if bloğu , false ise else bloğu çalışacaktır. Daha anlaşılır bir örnek ile devam edelim.
var deger1 = 52
var deger2 = 6
if(deger1 > deger2){ //deger1 büyüktür deger2 den dolayısıyla koşul true dönecek
println(“deger1 deger2 den büyüktür”)
}else{
println(“deger1 deger2 den küçüktür”)
}
Konsol Çıktısı:
deger1 deger2 den büyüktür
var deger1 = 52 var deger2 = 6
if(deger1 > deger2){ //deger1 büyüktür deger2 den dolayısıyla koşul true dönecek println(“deger1 deger2 den büyüktür”) }else{ println(“deger1 deger2 den küçüktür”) }
Konsol Çıktısı: deger1 deger2 den büyüktür |
Yukarıdaki örnekte deger1 ile deger2 ‘yi “>” operatörü kullanarak karşılaştırdık. Operatörler ile ilgili derslerimiz için Operatör – 1 ve Operatör – 2 derslerimizi okumanızı tavsiye ederiz. Çünkü if koşul yapısı Operatörler ile birlikte kullanılır. deger1 deger2 den büyük olduğu için koşulumuz true dönecek ve if bloğu içindeki kod çalışacaktır. Eğer false dönseydi else bloğu çalışacaktı.
var deger1 = 52
var deger2 = 6
if(deger1 < deger2){ //deger1 küçüktür deger2 den koşulu yanlış olduğu için false dönecek println("deger1 deger2 den küçüktür") }else{ println("deger1 deger2 den büyüktür") } Konsol Çıktısı: deger1 deger2 den büyüktür
var deger1 = 52 var deger2 = 6
if(deger1 < deger2){ //deger1 küçüktür deger2 den koşulu yanlış olduğu için false dönecek println(“deger1 deger2 den küçüktür”) }else{ println(“deger1 deger2 den büyüktür”) }
Konsol Çıktısı: deger1 deger2 den büyüktür |
Yukarıda koşulumuz false döndüğü için if bloğundaki kodlar değil else bloğundaki kodlar çalıştı. Else bloğu koşul sağlanmazsa yapılacak işlemler için vardır ve koşul sağlanmadığı durumda direk else bloğu çalışır. İf her zaman else ile birlikte kullanılmaz. Koşul sağlanmadığı durumlarda herhangi bir işlem yapmamız gerekmiyorsa else bloğunu kullanmayız ve if bloğunu tek başına kullanırız.
Sadece if
var hiz = 120
var hizSiniri = 90
if(hiz > hizSiniri){
println(“Lütfen yavaş gidiniz!”)
}
Konsol Çıktısı:
Lütfen yavaş gidiniz!
var hiz = 120 var hizSiniri = 90
if(hiz > hizSiniri){ println(“Lütfen yavaş gidiniz!”) }
Konsol Çıktısı: Lütfen yavaş gidiniz! |
Görüldüğü gibi hız değerimiz 90 dan büyük değilse yapmamız gereken bir şey yok. Sadece 90 dan büyük koşulunda uyarı yapıyoruz ve “Lütfen yavaş gidiniz!” uyarısı veriyoruz.
“if” – “else if” – “else” koşul yapısı
Yukarıda if else yapısının dışında birden çok kontrol sağlayacağımız “if” – “else if” – “else” yapımızda bulunmaktadır. Onuda aşağıdaki kod ile anlatmaya çalışacağım.
val x = 55
if (x > 90)
{
println(“x 90’dan büyüktür”)
}
else if (x >= 80)
{
println(“x 90 ile 80 arasında”)
}
else if (x >= 70)
{
println(“x 80 ile 70 arasında”)
}
else if (x >= 60)
{
println(“x 70 ile 60 arasında”)
}
else if (x >= 50)
{
println(“x 60 ile 50 arasında”)
}
else if (x >= 40)
{
println(“x 50 ile 40 arasında”)
}
else if (x >= 30)
{
println(“x 40 ile 30 arasında”)
}
else if (x >= 20)
{
println(“x 30 ile 20 arasında”)
}
else if (x >= 10)
{
println(“x 20 ile 10 arasında”)
}
else if (x >= 0)
{
println(“x 10 ile 0 arasında”)
}
else
{
println(“x 0 ‘dan küçüktür”)
}
Konsol Çıktısı:
x 60 ile 50 arasında
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
val x = 55 if (x > 90) { println(“x 90’dan büyüktür”) } else if (x >= 80) { println(“x 90 ile 80 arasında”) } else if (x >= 70) { println(“x 80 ile 70 arasında”) } else if (x >= 60) { println(“x 70 ile 60 arasında”) } else if (x >= 50) { println(“x 60 ile 50 arasında”) } else if (x >= 40) { println(“x 50 ile 40 arasında”) } else if (x >= 30) { println(“x 40 ile 30 arasında”) } else if (x >= 20) { println(“x 30 ile 20 arasında”) } else if (x >= 10) { println(“x 20 ile 10 arasında”) } else if (x >= 0) { println(“x 10 ile 0 arasında”) } else { println(“x 0 ‘dan küçüktür”) }
Konsol Çıktısı: x 60 ile 50 arasında |
Yukarıdaki örnekte birden fazla koşulu ayrı ayrı kontrol ettik. Koşullardan biri sağlandığı an (if ve ya else if içindeki koşullar) ilgili if ‘in bloğu çalışacak ve alt taraftaki else if ve else yapısı çalışmayacaktı. Eğer koşullardan hiç biri sağlanmasaydı else bloğu çalışacaktı ve “x 0’dan küçüktür” yazısını ekrana bastıracaktı.
Farkettiyseniz hep koşullarımızın içinde tek kontrol kullandık. Birden fazla kontrol kullanacağımız durumlar elbette olabilir. Örneğin verilen bir değerin 10 dan büyük 20 den küçük olmasını isteyebiliriz. İşte bunun için Operatör 2 dersimizde ki Mantıksal Operatörü incelemeniz gerekecek. Biz yinede kısaca anlatalım.
And (&&) ve OR (||) => ve – ve ya kullanımı
Bu konuyu Operatörler 2 dersinde Mantıksal Operatörler kısmında daha detaylı açıkladık. Şimdi sadece bir kaç örnekle geçeceğim.
if (x > 5 && x < 10) //x 5 ten büyük VE 10 dan küçükse (6,7,8,9) bu koşulları sağlar ve if bloğu çalışır { //işlemler } else // diğer tüm durumlarda else bloğu çalışır { //durumlar }
if (x > 5 && x < 10) //x 5 ten büyük VE 10 dan küçükse (6,7,8,9) bu koşulları sağlar ve if bloğu çalışır { //işlemler } else // diğer tüm durumlarda else bloğu çalışır { //durumlar } |
Yukarıda AND kullanımına basit bir örnek verdik. x değerimiz 8 olduğunu varsayarsak x 5 ten büyük olduğu için x>5 koşulu true dönecektir aynı şekilde x<10 true dönecektir. AND kullanımında tüm değerler true ise if bloğuna girecektir. true && true => true
x değerimizin 13 olduğunu varsayalım. x>5 koşulu true ancak x<10 değeri false dönecektir. true && false => false , Dolayısıyla koşulumuz false dönecek else bloğu çalışacaktır.
if(x>5 || y<10){
//işlemler
}else{
//diğer durumlar
}
if(x>5 || y<10){ //işlemler }else{ //diğer durumlar } |
Yukarıdaki kodda ise OR kullanımına örnek verdik.x değerimiz 7, y değerimiz 9 olsun. x>5 true, y<10 true dönecek , true || true => true dönecektir.
x değerimiz 7, y değerimiz 13 olsun. x>5 true, y <10 false dönecek , true || false => true dönecek
x değerimiz 3, y değerimiz 13 olsun. x>5 false,y < 13 false dönecek , false || false => false dönecek ve else bloğu çalışacak.
İf ile ilgili Bill Gates ‘in güzel bir anlatımı var. Onu izlemeden geçmeyelim.
Kotlin if Else Koşul Yapısı dersimizi burada sonlandırıyorum. Sizlere tavsiyem programlamada yeniyseniz kesinlike derslerimizi sırası ile takip etmenizdir. Aksi takdirde operatörleri anlamadan if Else Koşul Yapısı’nı anlamanız daha zor olacaktır.
Bir sonraki dersimizde When yapısı kullanımı ile devam edeceğiz. When Javada ki switch – case kullanımının yerini almıştır. Bir sonraki dersimde detaylı anlatmaya çalışacağız. Bir sonra ki dersimizde görüşmek dileğiyle…
Konu hakkında sorularınızı konu altından ve ya SoruCevap sitemizden sorabilirsiniz.
Tüm Kotlin Dersleri için tıklayınız.
2