Anasayfa Java Dili İf-Else Yapıları

Java Dili İf-Else Yapıları

Okan

Günlük hayatımızda sıklıkla farklı konular üzerinde karar vermemiz gerekiyor. Bu kararları vermek için de seçenekleri tartıyoruz. Aynı şekilde bazı durumlarda program içerisindeki iki veya daha fazla değerin ya da durumun karşılaştırılması gerekebilir. Bu karşılaştırmayı da if-else yapıları ile yapıyoruz.

Bu yapıları 3 başlık altında ele alacağız :

yapılar bu şekildedir.

İf Yapısı

İf ifadesi en çok kullanılan sorgu komutlarından birisidir. Eğer sorgudaki şartımız sağlanırsa if bloğunun içerisindeki komutlar çalışır, sağlanmadığı takdirde if bloğunu atlayıp program çalışmasını sürdürür.

Aşağıdaki örnekte basit bir if yapısı kullanılmıştır.

package kodbloklari.com;

public class if_else {
	
	public static void main(String[] args) {
		
		int a = 15;
		int b = 25;
		
		if(a > b) {
			System.out.println("A değeri B değerinden büyüktür.");
		}
		System.out.println("KOD BLOKLARI");
	}
}

Yukarıdaki örnekte parantezin içerisindeki şartımız sağlanmadığı için if bloğunu atlayarak 12.satırdan program çalışmaya devam eder.

Programın ekran çıktısı da şu şekildedir:

if-else yapıları

Şimdi de doğru olan bir koşul yazıp, programın if bloğunun içerisine girmesini sağlayalım.

package kodbloklari.com;

public class if_else2 {
	
	public static void main(String[] args) {
		
		int a = 15;
		int b = 25;
		
		if(b > a) {
			System.out.println("B değeri A değerinden büyüktür.");
		}
		System.out.println("KOD BLOKLARI");
	}
}

Buradaki örnekte ise if komutundaki şartımız sağlandığı için program if bloğunun içine girer ve program çalışmasını sürdürür.

Kodun çıktısı da şu şekildedir:

if-else yapıları-2

İf yapısı en basit haliyle bu şekildedir.

İf-else Yapıları

İf-else yapısında if yapısından farklı olarak, eğer sorgudaki şartımız sağlanmazsa başka bir komut veya komutlar çalışır.

Örnek olarak kullanıcıdan notunu girmesini isteyeceğiz. Notu 50’den büyükse “Dersi geçtiniz” yazdırmasını istiyoruz. Eğer şart sağlanmazsa da “Dersten kaldınız” yazdırmak istiyoruz. Bunun için else bloğunu kullanacağız.

Bu örneğimizi program üzerinde çalıştıralım.

package kodbloklari.com;

import java.util.Scanner;

public class if_else3 {
	
	public static void main(String[] args) {
		
		Scanner scan = new Scanner(System.in);
		
		int not;
		System.out.println("Sınav notunu giriniz: ");
		not = scan.nextInt();
		
		if(not > 50) {
			System.out.println("Dersten geçtiniz.");
		}
		else {
			System.out.println("Dersten kaldınız.");
		}	
	}
}

Bu programda eğer kullanıcının girdiği not 50’den büyükse if bloğunu çalıştırıp, if-else yapısından çıkış yaparak program çalışmasını sürdürecek. Kullanıcının girdiği not eğer 50’den büyük değilse de else bloğunu çalıştıracak.

Yukarıdaki örnekte kullanıcıdan input aldık. Bu konu hakkında bilgi sahibi olmayanlar Java Dili İnput Alma yazımı ziyaret edebilirler.

Kodun ekran çıktısı şu şekildedir:

if-else yapısı

Şimdi de koşul yapılarının en son yapısı olan if,else-if,else yapısı inceleyeceğiz.

İf, else-if, else Yapıları

Eğer sorgumuzda kontrol edilmesi gereken durumlar birden fazla ise bu sorguda İf, else-if, else yapısını kullanmamız gerekir.

Bu yapıyı daha iyi bir şekilde anlamak için yukarıdaki örnekten devam edelim. Yukarıda sadece öğrencinin dersten geçip geçmediğini sorgulamıştık.

Bu örnekte ise, öğrencinin hangi harf notuyla geçtiğini sorgulayacağız. Bunu yapmak için yukarıda da bahsettiğim gibi birden fazla durumu karşılaştırmamız gerekiyor. Bunun için bu örneği if, else-if, else yapısını kullanarak yapmamız gerekir.

package kodbloklari.com;

import java.util.Scanner;

public class if_else4 {
	
	public static void main(String[] args) {
		
		Scanner scan = new Scanner(System.in);
		
		int not;
		System.out.println("Sınav notunu giriniz: ");
		not = scan.nextInt();
		
		if(not > 90) {
			System.out.println("AA ile dersi geçtiniz.");
		}
		else if(not > 85) {
			System.out.println("BA ile dersi geçtiniz.");
		}
		else if(not > 80) {
			System.out.println("BB ile dersi geçtiniz.");
		}
		else if(not > 75) {
			System.out.println("CB ile dersi geçtiniz.");
		}
		else if(not > 50) {
			System.out.println("Kosullu geçtiniz.");
		}
		else {
			System.out.println("Dersten kaldınız.");
		}
	}
}

Bu sorguda program yukarıdan aşağıya doğru koşulları tek tek kontrol eder. Eğer koşullardan biri sağlanırsa o koşulun içerisindeki komutları çalıştırıp sorguyu sonlandırır.

Hiçbir koşul sağlanmazsa da else yapısını çalıştırır.

Kodun ekran çıktısı da şu şekildedir:

if-else yapısı

Son yapımız da bu şekildedir.

Şimdide son olarak buraya kadar öğrendiğimiz yapıları kullanarak basit bir hesap makinesi yapalım.

Kullanıcıdan 2 tane sayı aldıktan sonra tekrardan kullanıcıya hangi işlemi yapmasını isteyeceğini soracağız. Kullanıcının seçimine göre sayıların üzerinde işlemler yapacağız.

Kodu aşağıdaki gibidir:

package kodbloklari.com;

import java.util.Scanner;

public class if_else5 {
	
	public static void main(String[] args) {
		
		Scanner scan = new Scanner(System.in);
		
		int sayi1,sayi2;
		int islem;
		
		System.out.print("1.Sayıyı giriniz: ");
		sayi1 = scan.nextInt();
		System.out.print("2.Sayıyı giriniz: ");
		sayi2 = scan.nextInt();
		
		System.out.println("\n1.Toplama");
		System.out.println("2.Çıkarma");
		System.out.println("3.Bölme");
		System.out.println("4.Çarpma");
		
		System.out.print("İslemi seçiniz: ");
		islem = scan.nextInt();
		
		if(islem == 1) {
			System.out.println("Toplama işleminin sonucu " + (sayi1 + sayi2));
		}
		else if(islem == 2) {
			System.out.println("Çıkarma işleminin sonucu " + (sayi1 - sayi2));
		}
		else if(islem == 3) {
			System.out.println("Bölme işleminin sonucu " + ((float)sayi1 / sayi2));
		}
		else if(islem == 4) {
			System.out.println("Çarpma işleminin sonucu " + (sayi1 * sayi2));
		}
		else {
			System.out.println("Seçiminiz doğru değil !!");
		}
	}
}

Yukarıdaki kodda bölme işlemin de float kullanılmasının sebebi sonucun tam olarak doğru çıkması içindir. Veri tiplerini daha detaylı olarak incelemek için Java Dili Veri Tipleri ve Değişkenler sayfasını ziyaret edebilirsiniz.

Kodun ekran çıktısı da şu şekildedir:

hesap makinesi yapısı

İf-else yapıları ile çok fazla örnek yapabiliriz. Konuyu örnekler yaparak daha iyi kavramak için Java Dili Örnekleri sayfasından örnekleri inceleyebilirsiniz.

Yorum Yap

Bu web sitesi deneyiminizi geliştirmek için çerezler kullanmaktadır. Kabul Et Tamamını Oku

Gizlilik Politikası