Java anahtarı Bildirimi (Örneklerle)

Bu eğitimde, örnekler yardımıyla programınızın yürütme akışını kontrol etmek için Java'daki switch deyimini kullanmayı öğreneceksiniz.

Bu switchifade, birçok alternatif arasında bir kod bloğu yürütmemize izin verir.

switchJava'daki ifadenin sözdizimi şöyledir:

 switch (expression) ( case value1: // code to be executed if // expression is equal to value1 break; case value2: // code to be executed if // expression is equal to value2 break;… … default: // default statements )

Switch ifadesi nasıl çalışır?

İfade bir kez değerlendirilir ve her bir durum etiketinin değerleri ile karşılaştırılır .

  • Bir eşleşme varsa, eşleşen büyük / küçük harf etiketinden sonraki ilgili kod yürütülür.
    Örneğin, ifadenin değeri değer2'ye eşitse, sonraki kod case value2:çalıştırılır.
  • Eşleşme yoksa, sonraki kod default:çalıştırılır.

Not : Java if… else… if ladder kullanarak aynı işlevi yapabiliriz. Bununla birlikte, switch ifadesinin sözdizimi daha temizdir ve okunması ve yazılması çok daha kolaydır.

Anahtar İfadesinin Akış Şeması

Java anahtar deyiminin akış şeması

Örnek 1: Java switch deyimi

 // Java Program to check the size // using the switch… case statement class Main ( public static void main(String() args) ( int number = 44; String size; // switch statement to check size switch (number) ( case 29: size = "Small"; break; case 42: size = "Medium"; break; // match the value of week case 44: size = "Large"; break; case 48: size = "Extra Large"; break; default: size = "Unknown"; break; ) System.out.println("Size: " + size); ) )

Çıktı :

 Boyut: Büyük

Yukarıdaki örnekte, boyutu bulmak için switch deyimini kullandık. Burada değişken bir sayımız var. Değişken, her bir case ifadesinin değeri ile karşılaştırılır.

Değer, durum 44 ile eşleştiğinden , boyut değişkenine değer atanır Large.

Java anahtarındaki break ifadesi… case

breakHer durumda bloğunda ifadeyi kullandığımıza dikkat edin . Bu, ifadenin sonlandırılmasına yardımcı olur.

İfade breakkullanılmazsa, eşleşen durumdan sonraki tüm durumlar yürütülür. Örneğin,

 class Main ( public static void main(String() args) ( int expression = 2; // switch statement to check size switch (expression) ( case 1: System.out.println("Case 1"); // matching case case 2: System.out.println("Case 2"); case 3: System.out.println("Case 3"); default: System.out.println("Default case"); ) ) )

Çıktı

 Durum 2 Durum 3 Varsayılan durum

Yukarıdaki örnekte, breakifadeyi kullanmadık. Burada ifade ile eşleşir case 2.

Bununla birlikte case 2, aşağıdaki tüm davaların da yürütüldüğünü görebilirsiniz.

Bu istenen çıktı değil. Bu nedenle, breakifadeyi her durum bloğuyla kullanmak gerekir .

Örnek 2: Hesap Makinesi'ni anahtar deyimini kullanarak yapma

Aşağıdaki program kullanıcıdan üç girdi alır: bir operatör ve 2 numara . Kullanıcı tarafından sağlanan operatöre bağlı olarak numaralar üzerinden hesaplama yapar. Ardından sonuç ekranda görüntülenir.

Programa geçmeden önce, kullanıcıdan girdi almak için Java Tarayıcı hakkında bilgi sahibi olduğunuzdan emin olun.

 import java.util.Scanner; class Main ( public static void main(String() args) ( char operator; Double number1, number2, result; // create an object of Scanner class Scanner input = new Scanner(System.in); // ask users to enter operator System.out.print("Choose an operator: +, -, *, or /: "); operator = input.next().charAt(0); // ask users to enter numbers System.out.print("Enter first number: "); number1 = input.nextDouble(); System.out.println("Enter second number: "); number2 = input.nextDouble(); switch (operator) ( // performs addition between numbers case '+': result = number1 + number2; System.out.print(number1 + "+" + number2 + " = " + result); break; // performs subtraction between numbers case '-': result = number1 - number2; System.out.print(number1 + "-" + number2 + " = " + result); break; // performs multiplication between numbers case '*': result = number1 * number2; System.out.print(number1 + "*" + number2 + " = " + result); break; // performs division between numbers case '/': result = number1 / number2; System.out.print(number1 + "/" + number2 + " = " + result); break; default: System.out.println("Invalid operator!"); break; ) input.close(); ) )

Çıkış 1

 Bir operatör seçin: +, -, * veya /: + İlk numarayı girin: 23 İkinci numarayı girin: 21 23.0 + 21.0 = 44.0

Çıkış 2

 Bir operatör seçin: +, -, * veya /: - İlk numarayı girin: 24 İkinci numarayı girin: 13 24.0-13.0 = 11.0

Çıkış 3

 Bir operatör seçin: +, -, * veya /: * İlk numarayı girin: 12 İkinci numarayı girin: 6 12.0 * 6.0 = 72.0

Çıkış 4

 Bir operatör seçin: +, -, * veya /: / İlk numarayı girin: 36 İkinci numarayı girin: 6 36.0 / 6.0 = 6.0

Çıkış 5

Bir operatör seçin: +, -, * veya /:? İlk numarayı girin: 12 İkinci numarayı girin: 23 Geçersiz operatör!

Yukarıdaki örnekte, switch… casetoplama, çıkarma, çarpma ve bölme işlemlerini gerçekleştirmek için ifadeyi kullanıyoruz .

Not : Java switch deyimi yalnızca şunlarla çalışır:

  • Java İlkel veri türleri: bayt, kısa, karakter ve int
  • Java Numaralandırılmış türler
  • Java String Sınıfı
  • Java Wrapper Classes: Character, Byte, Short ve Integer.

Ilginç makaleler...