Switch Statement
Coddy'nin Java Journey'sinin Temeller bölümünün bir parçası. Ders 29 / 73.
switch ifadesi, çok yönlü bir if ifadesi gibidir. Tek bir koşulu değerlendirmek yerine, bir variable değerini birden fazla cases ile kontrol eder ve eşleşen case ile ilişkili kodu çalıştırır.
Temel bir switch ifadesinin yapısı şu şekildedir:
switch (variable) {
case value1:
// variable value1'e eşitse çalıştırılacak kod
break;
case value2:
// variable value2'ye eşitse çalıştırılacak kod
break;
// ... daha fazla durum
default:
// Hiçbir durum eşleşmezse çalıştırılacak kod
}switchanahtar kelimesini, parantez içinde test etmek istediğinizvariabletakip eder.- Her
case, değişkenin alabileceği olası bir değeri temsil eder. - Değişken o
casedeğerine karşılık geliyorsa (matches), her bircaseiçindeki kod çalıştırılır.
breakifadesi kritik öneme sahiptir; bir case çalıştırıldıktan sonraswitchbloğundan çıkılmasını sağlar. O olmasaydı, yürütme bir sonraki case'e "düşerdi" (fall through).defaultdurumu isteğe bağlıdır ve başka hiçbir case eşleşmediğinde çalıştırılır.
İşte bir örnek:
int day = 3;
String dayName;
switch (day) {
case 1:
dayName = "Monday";
break;
case 2:
dayName = "Tuesday";
break;
// ... diğer günler için case'ler
default:
dayName = "Invalid day";
}Ayrıca birden fazla case durumunu tek bir durumda birleştirebilirsiniz:
int day = 3;
String dayName;
switch (day) {
case 1:
case 2:
case 3:
dayName = "Start of week";
break;
// ... diğer günler için case'ler
default:
dayName = "Invalid day";
}Görev
BaşlangıçBir ay numarası (Ocak için 1, Şubat için 2, vb.) alan ve ait olduğu mevsimi yazdıran bir program oluşturun. Mantık için bir switch ifadesi kullanın.
Mevsimler ve bunlara karşılık gelen aylar şunlardır:
Winter: Aralık (12), Ocak (1), Şubat (2)Spring: Mart (3), Nisan (4), Mayıs (5)Summer: Haziran (6), Temmuz (7), Ağustos (8)Autumn: Eylül (9), Ekim (10), Kasım (11)
Herhangi bir other ay numarası için "Invalid month" yazdırın.
Kendin dene
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int month = scanner.nextInt();
String season = "";
// Kodunuzu aşağıya yazın
System.out.println(season);
}
}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
4Operators Part 1
Arithmetic OperatorsModulo OperatorIncrement/DecrementPost Increment/DecrementArithmetic ShortcutsComparison OperatorsString Comparison5Operators Part 2
Logical Operators Part 1Logical Operators Part 2Recap - Simple LogicLogical Operators Part 3Logical Operators Part 43Variables Part 2
ConstantsNaming ConventionsRecap - Initialize VariablesType Casting Part 1Type Casting Part 26Decision Making
If StatementIf - ElseSwitch StatementTernary OperatorRecap - If ElseNested If - ElseKendi başına pratik yap: Online Java derleyicisi