شرط switch
دستور switch در جاوا: case، break، default و چند مقدار در یک case.
دستور switch
جایگزین تمیز برای زنجیرههای طولانی if...else:
int day = 3;
switch (day) {
case 1:
System.out.println("شنبه");
break;
case 2:
System.out.println("یکشنبه");
break;
case 3:
System.out.println("دوشنبه");
break;
default:
System.out.println("روز نامعتبر");
}
نقش break
بدون break اجرا به case بعدی میریزد (fall-through):
int x = 2;
switch (x) {
case 1:
System.out.println("یک");
case 2:
System.out.println("دو"); ← اجرا میشود
case 3:
System.out.println("سه"); ← این هم! (fall-through)
break;
case 4:
System.out.println("چهار"); ← این نه (break قبلی)
}
چند مقدار در یک case
int day = 6;
switch (day) {
case 1:
case 2:
case 3:
case 4:
case 5:
System.out.println("روز کاری");
break;
case 6:
case 7:
System.out.println("آخر هفته!");
break;
}
switch روی رشته
String lang = "java";
switch (lang) {
case "java":
System.out.println("جاوا ☕");
break;
case "python":
System.out.println("پایتون 🐍");
break;
default:
System.out.println("ناشناخته");
}
switch expression (Java 14+)
شکل مدرنتر که مقدار برمیگرداند:
int day = 6;
String type = switch (day) {
case 1, 2, 3, 4, 5 -> "روز کاری";
case 6, 7 -> "آخر هفته";
default -> "نامعتبر";
};
System.out.println(type);
چه زمانی switch و چه زمانی if؟
| وضعیت | بهترین |
|---|---|
| مقایسه یک متغیر با مقادیر مشخص | switch |
| شرطهای پیچیده (بازه، &&، ||) | if |
| ۳+ حالت برای یک متغیر | switch |
این مبحث بخشی از دوره آموزش کامل جاوا است.