Java Academy · Ders

Ok Biçimli switch

Modern switch ok söz dizimini kullanın

1. ders / 413 adım

Ok Biçimli switch, CoddyKit'te ücretsiz bir Java Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Java Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Java Academy kursu toplamda 4 dersten oluşur.

Eski Seçim Yapısı Sorunu

Klasik Java switch deyiminde iki nokta etiketleri kullanılır ve her durumdan sonra break yazılması gerekirdi. break yazmayı unutmak, yürütmenin sonraki duruma kaydığı sonraki dala geçiş hatalarına neden olurdu.

Java'nın modern sürümleri (14 ve sonrası) bu sorunu tamamen çözen ok sözdizimini sunar.

Ok Sözdiziminin Temelleri

Oklu switch yapısında her etiket, : yerine -> kullanır. Sonraki dala geçiş yoktur ve kesme gerekmez. Her dal yalnızca kendi kodunu çalıştırır.

public class Main {
    public static void main(String[] args) {
        int day = 3;
        switch (day) {
            case 1 -> System.out.println("Monday");
            case 3 -> System.out.println("Wednesday");
            default -> System.out.println("Other day");
        }
    }
}

Artık Kesme Yok

Eski biçimde her durumdan sonra break; yazmanız gerekirdi. Oklu biçim bu yükü tamamen ortadan kaldırır. Yalnızca eşleşen dal çalışır.

public class Main {
    public static void main(String[] args) {
        char grade = 'B';
        switch (grade) {
            case 'A' -> System.out.println("Excellent");
            case 'B' -> System.out.println("Good");
            case 'C' -> System.out.println("Average");
            default -> System.out.println("Needs work");
        }
    }
}

Blok Gövdeleri

Bir dalda birden fazla deyim gerektiğinde, onu { } süslü parantezleri içine alın. Blok, istenen sayıda deyim içerebilir.

public class Main {
    public static void main(String[] args) {
        int code = 2;
        switch (code) {
            case 2 -> {
                System.out.println("Processing code 2");
                System.out.println("Done");
            }
            default -> System.out.println("Unknown");
        }
    }
}

Dizelere Göre Seçim Yapısı Kullanımı

Oklu switch yapısı, eski biçimde olduğu gibi String değerleriyle çalışır. Karşılaştırmalar arka planda equals kullanır; bu nedenle büyük-küçük harfe duyarlıdır.

public class Main {
    public static void main(String[] args) {
        String fruit = "apple";
        switch (fruit) {
            case "apple" -> System.out.println("Red or green");
            case "banana" -> System.out.println("Yellow");
            default -> System.out.println("Unknown fruit");
        }
    }
}

Varsayılan Dal

default dalı, diğer durumlar tarafından kapsanmayan tüm değerleri ele alır. Beklenmeyen girdilerin düzgün biçimde işlenmesi için her zaman bir tane eklemek iyi bir uygulamadır.

public class Main {
    public static void main(String[] args) {
        int level = 99;
        switch (level) {
            case 1 -> System.out.println("Beginner");
            case 2 -> System.out.println("Intermediate");
            default -> System.out.println("Unknown level: " + level);
        }
    }
}

Numaralandırmalara Göre Seçim Yapısı Kullanımı

Oklu switch yapısı, enum türleriyle mükemmel uyum sağlar. Her etikette numaralandırma adı ön ekini yazmayarak dalları kısa ve temiz tutabilirsiniz.

public class Main {
    enum Color { RED, GREEN, BLUE }
    public static void main(String[] args) {
        Color c = Color.GREEN;
        switch (c) {
            case RED -> System.out.println("Stop");
            case GREEN -> System.out.println("Go");
            case BLUE -> System.out.println("Calm");
        }
    }
}

Dallarda Yöntem Çağırma

Her oklu dal herhangi bir yöntemi çağırabilir. Bu, gerçek işi başka bir yere devrederken switch yapısının okunabilir kalmasını sağlar.

public class Main {
    static void greet(String who) {
        System.out.println("Hello, " + who);
    }
    public static void main(String[] args) {
        int who = 1;
        switch (who) {
            case 1 -> greet("Alice");
            case 2 -> greet("Bob");
            default -> greet("Stranger");
        }
    }
}

if-else'den Daha Temiz

Oklu switch yapısı, genellikle uzun if-else zincirlerinin yerini alır. Bir değişkeni çok sayıda sabit değerle karşılaştırdığınızda switch daha anlaşılır okunur.

public class Main {
    public static void main(String[] args) {
        int month = 4;
        switch (month) {
            case 12, 1, 2 -> System.out.println("Winter");
            case 3, 4, 5 -> System.out.println("Spring");
            case 6, 7, 8 -> System.out.println("Summer");
            default -> System.out.println("Autumn");
        }
    }
}

Yalnızca Yan Etkiler

Burada kullanılan oklu biçimdeki bir switch deyimi işlemler gerçekleştirir ancak bir değer üretmez. Bir değer döndürmek için sonraki derste ele alınan bir switch ifadesi kullanılır.

public class Main {
    public static void main(String[] args) {
        int n = 5;
        switch (n % 2) {
            case 0 -> System.out.println(n + " is even");
            case 1 -> System.out.println(n + " is odd");
        }
    }
}

Bir Dalda Birden Çok Değer

Değerleri virgüllerle ayırarak birden fazla değeri aynı dala yönlendirebilirsiniz. Bu, daha sonra ele alınacak çok etiketli durumlara bir ön izlemedir.

public class Main {
    public static void main(String[] args) {
        char c = 'e';
        switch (c) {
            case 'a', 'e', 'i', 'o', 'u' -> System.out.println("Vowel");
            default -> System.out.println("Consonant");
        }
    }
}

Hızlı Kontrol

Oklu switch yapısının eski iki nokta biçimine göre temel avantajı nedir?

Özet

Modern oklu switch sözdizimini öğrendiniz:

  • : yerine -> kullanın
  • Sonraki dala geçiş yoktur ve break gerekmez
  • Birden fazla deyim içeren dallar için { } süslü parantezlerini kullanın
  • Bir dalı paylaşmak için etiketleri virgülle ayırın
  • Her zaman bir default dalı ekleyin
Başlamak ücretsiz

Yapay zeka eğitmeniyle Java öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
104
Dersler
374

Sıkça Sorulan Sorular

“Ok Biçimli switch” dersi ücretsiz mi?

Evet — “Ok Biçimli switch” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Java Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Java Academy kursu toplamda 4 dersten oluşur.

“Ok Biçimli switch” dersinde ne öğreneceğim?

Modern switch ok söz dizimini kullanın Java Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Java Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Java Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“Ok Biçimli switch” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Java Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Java Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Ok Biçimli switch
  2. İfade Olarak switch
  3. yield Anahtar Sözcüğü
  4. Çok Etiketli Durumlar
← Java Academy Sayfasına Dön