Menu
Coddy logo textTech

Nested If - Else

Coddy'nin Java Journey'sinin Temeller bölümünün bir parçası — ders 32 / 73.

if-else if-else ifadelerini birbirlerinin içine yerleştirebiliriz. Bu, hiyerarşik karar verme yapıları oluşturmamıza olanak tanır.


Derinlemesine iç içe geçmiş if ifadelerini akılda tutun; bunlar kodu okumayı ve bakımını zorlaştırabilir.

Örneğin:

if (age > 18) {
    if (hasLicense) {
        System.out.println("You can drive");
    } else {
        System.out.println("Get a license first");
    }
} else {
    System.out.println("Too young to drive");
}

Sonsuz şekilde iç içe olabilir:

if (condition1) {
	if (condition2) {
		if (condition3) {
		    // runs only when condition1, condition2 and condition3 are all true
		    ...
		}
	}
}
challenge icon

Görev

Başlangıç

Bir rollercoaster'a binebilecek birini kontrol eden bir program oluşturun. Gereksinimler şunlardır:

  • En az 12 yaşında olmalı
  • 150cm'den uzun olmalı
  • Her iki gereksinimi de karşılıyorlarsa ancak 15 yaşın altındaysa, yetişkin gözetimi gerekir

Her durum için tam olarak şu mesajları yazdırın:

  • Çok gençse: Sorry, you're too young
  • Yeterince uzun değilse: Sorry, you're not tall enough
  • 15 yaşın altındaysa ve yetişkin yoksa: Sorry, you need an adult with you
  • 15 yaşın altındaysa ve yetişkin varsa: You can ride with adult supervision!
  • 15 veya daha büyük ve yeterince uzunsa: You can ride by yourself!

Kopya kağıdı

Birbirlerinin içine if-else if-else ifadeleri yerleştirerek hiyerarşik karar verme yapıları oluşturabilirsiniz:

if (age > 18) {
    if (hasLicense) {
        System.out.println("You can drive");
    } else {
        System.out.println("Get a license first");
    }
} else {
    System.out.println("Too young to drive");
}

İç içe yerleştirme sonsuz şekilde yapılabilir:

if (condition1) {
    if (condition2) {
        if (condition3) {
            // if condition1, condition2 and condition3 are true
            ...
        }
    }
}

Not: Derinlemesine iç içe if ifadeleri kodu okumayı ve sürdürmeyi zorlaştırabilir.

Kendin dene

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int age = scanner.nextInt(); // Bu satırı değiştirmeyin
        int height = scanner.nextInt(); // Bu satırı değiştirmeyin
        boolean hasAdult = scanner.nextBoolean(); // Bu satırı değiştirmeyin

        // Kodu aşağıya yazın
        
        scanner.close();
    }
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temeller bölümündeki tüm dersler