تخطَّ إلى المحتوى

switch

عبارة switch switch

switch تقارن قيمة واحدة مع عدة حالات محددة بدل كتلة if-else طويلة.

switch تفحص قيمة (رقم، نص، أو enum) وتنفّذ الكود المقابل للحالة المطابقة. case يحدد كل حالة، و break يمنع السقوط للحالة التالية. default ي处理 الحالات غير المطابقة.

منذ Java 14، تعابير switch الجديدة برموز -> تلغي الحاجة لـ break.

الصياغة

switch (قيمة) {
    case قيمة1:
        // كود
        break;
    default:
        // كود افتراضي
}

📄 مثال

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("أيام أخرى");
}

أهم النقاط

العنصرالوظيفة
case قيمة:حالة مطابقة — يُنفّذ الكود حتى يصل break
breakيخرج من switch — بدونه يسقط للحالة التالية (fall-through)
default:处理 الحالات غير المطابقة لأي case
-> (Java 14+)صيغة سهمية تمنع fall-through تلقائيًا

💡 نصائح عملية

  • استخدم الصيغة السهمية (->) في الكود الحديث — أقصر وأأمن
  • switch تعمل مع الأرقام و char و String و enum فقط — لا تعمل مع double أو boolean

⚠️ أخطاء شائعة

  • نسيان break في الصيغة القديمة يسبب fall-through غير مقصود
  • استخدام switch مع أنواع غير مدعومة مثل double أو Object

خصائص ذات صلة

🎓 تريد فهم الصورة الكاملة خطوة بخطوة؟ ابدأ من مسار JAVA الكامل بالعربي.