Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

جملة Switch

جزء من قسم Fundamentals في رحلة Java على Coddy. الدرس 29 من 73.

عبارة switch تشبه عبارة if متعددة المسارات. بدلاً من تقييم شرط واحد، تفحص قيمة variable مقابل عدة cases وتنفذ الكود المرتبط بالحالة المطبقة (matches).

إليك الهيكل الأساسي لـ switch statement:

switch (variable) {
    case value1:
        // الكود الذي يُنفَّذ إذا كانت variable تساوي value1
        break;
    case value2:
        // الكود الذي يُنفَّذ إذا كانت variable تساوي value2
        break;
    // ... المزيد من الحالات
    default:
        // الكود الذي يُنفَّذ إذا لم تتطابق أي حالة
}
  • كلمة switch الرئيسية متبوعة بالمتغير الذي تريد اختباره بين قوسين.
  • تُمثّل كل case قيمة محتملة للمتغير.
  • يتم تنفيذ الكود الموجود داخل كل case إذا كان المتغير يُطابق قيمة تلك الحالة.
  • تعليمات break أمر بالغ الأهمية؛ حيث تخرج من switch بعد تنفيذ case. بدونها، فإن التنفيذ سيمتد ("fall through") إلى case التالية.
  • حالة default اختيارية ويتم تنفيذها إذا لم تتطابق أي case أخرى.

إليك مثالاً:

int day = 3;
String dayName;

switch (day) {
    case 1:
        dayName = "Monday";
        break;
    case 2:
        dayName = "Tuesday";
        break;
    // ... حالات للأيام الأخرى
    default:
        dayName = "Invalid day";
}

يمكنك أيضًا دمج عدة حالات cases في حالة واحدة:

int day = 3;
String dayName;

switch (day) {
    case 1:
    case 2:
    case 3:
        dayName = "Start of week";
        break;
    // ... حالات للأيام الأخرى
    default:
        dayName = "Invalid day";
}
challenge icon

التحدي

مبتدئ

أنشئ برنامجًا يأخذ رقم الشهر (1 لشهر يناير، 2 لشهر فبراير، إلخ) ويطبع الفصل الذي ينتمي إليه. استخدم عبارة switch للمنطق.

الفصول والأشهر المقابلة لها هي:

  • Winter: ديسمبر (12)، يناير (1)، فبراير (2)
  • Spring: مارس (3)، أبريل (4)، مايو (5)
  • Summer: يونيو (6)، يوليو (7)، أغسطس (8)
  • Autumn: سبتمبر (9)، أكتوبر (10)، نوفمبر (11)

لأي رقم شهر آخر، اطبع "Invalid month".

جرّب بنفسك

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 = "";
        
        // اكتب كودك أدناه
        
        
        System.out.println(season);
    }
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس Fundamentals

تدرّب بنفسك: مترجم Java عبر الإنترنت