Java’da if (eğer) deyimi, koşul ifadesinin boolean değerine göre hangi işlemlerin yapılacağına karar vermeye yarayan bir koşullu dallanma (conditional branching) sağlayıcısıdır.
Program if-else deyimlerini en temel kullanımında, “(if) Eğer boolean ifade doğruysa şu işlemleri yap, (else) doğru değilse bu işlemleri yap” şeklinde çalıştırır diyebiliriz. ifade doğru (true) ise if bloğu işlemleri, yanlış (false) ise else bloğu işlemleri yapılır. if yapısı tek başına kullanılabilir. Diğer bir deyişle ardından else yapısı kullanmak zorunluluk değildir. Fakat else yapısı tek başına kullanılamaz. Öncesinde bir if yapısı mutlaka tanımlanmış olmalıdır.
Java’da if – else kullanım şekilleri
if(boolean koşul){
A işlemleri;
}
veya
if(boolean koşul)
Tek işlem;
Tek başına if kullanımında program koşul doğruysa A işlemlerini yapar. Eğer A işlemleri tek bir kod deyimi ise süslü parantezler olmadan da yazılabilir. Bu durum if, else if ve else için de geçerlidir.
if(boolean koşul){
A işlemleri;
}
else{
B işlemleri;
}
if-else kullanımında program koşul doğruysa A işlemlerini yapar. Koşul yanlışsa B işlemlerini yapar.
if(boolean koşul_1 || boolean koşul_2){
A işlemleri;
}
else if(boolean koşul_3){
B işlemleri;
}
else if(boolean koşul_4){
C işlemleri;
}
else{
D işlemleri;
}
E işlemleri satırı; // if - else bloğu sonrası kodlar.
if ler alt alta else if şeklinde yazılarak birden fazla durum için farklı kodlar çalıştırabilir. Ayrıca if veya else if parantezlerinde 1’den fazla koşul sorgulanabilir. Üstteki kodu yukarıdan aşağıya şu şekilde okuyabiliriz:
- EĞER koşul_1 VEYA koşul_2 den en az biri doğruysa A işlemlerini yap ve bitince E işlemleri satırına atla, EĞER doğru değilse bir alttaki else if‘e geç.
- EĞER koşul_3 doğruysa B işlemlerini yap ve bitince E işlemleri satırına atla, EĞER doğru değilse bir alttaki else if‘e geç.
- EĞER koşul_4 doğruysa C işlemlerini yap ve bitince E işlemleri satırına atla, EĞER doğru değilse bir alttaki else‘e geç.
- EĞER koşul_1, koşul_2, koşul_3, koşul_4 ifadelerinden hiçbiri doğru değilse D işlemlerini yap ve bitince E işlemleri satırına atla.
int not = 95;
if(not <= 100 && not >=85){
System.out.println("Başarılı.");
}
else if(not < 85 && not >= 50){
System.out.println("İyi.");
}
else if(not < 50 && not >= 0){
System.out.println("Başarısız!");
}
else System.out.println("Hatalı Giriş!");
// Program Çıktısı;
// Başarılı.
Üstteki örnekte if – else if yapısı için not değeri;
- Eğer 100 ile 85 arasındaysa Başarılı.
- Eğer 84 ile 50 arasındaysa İyi.
- Eğer 49 ile 0 arasındaysa Başarısız!
- Eğer 0 ile 100 aralığı dışında (negatif veya 100’den büyük) bir değer ise Hatalı Giriş! çıktısını verir.
koşul parantezlerinde kullandığımız && operatörü, “mantıksal VE” anlamına gelmektedir ve her iki değerin de doğru olması durumunda “true” döndürür. (not < 85 && not >=50) yazım biçimi, not 85’den küçük VE AYNI ZAMANDA 50’ye eşit yada büyük anlamına gelmektedir.
if veya else if koşulunda illaki sayısal karşılaştırmalar yapılmalıdır diye bir durum söz konusu değildir. boolean sonuç (true / false) veren her türlü ifade, değişken veya metotlar ile if yapısı oluşturulabilir.