الجمل الشرطية
الجمل الشرطية تسمح لك بتنفيذ أكواد مختلفة بناءً على شروط مختلفة. في هذا الدرس، سنتعلم if، else if، else، وswitch.
جملة if
JAVA
if (شرط) {
// يتم تنفيذ هذا الكود إذا كان الشرط صحيحًا
}
مثال
JAVA
int age = 20;
if (age >= 18) {
System.out.println("أنت بالغ");
}
جملة if-else
JAVA
if (شرط) {
// يتم تنفيذ هذا الكود إذا كان الشرط صحيحًا
} else {
// يتم تنفيذ هذا الكود إذا كان الشرط خاطئًا
}
مثال
JAVA
int age = 15;
if (age >= 18) {
System.out.println("أنت بالغ");
} else {
System.out.println("أنت قاصر");
}
جملة if-else if-else
JAVA
if (شرط1) {
// يتم تنفيذ هذا الكود إذا كان الشرط1 صحيحًا
} else if (شرط2) {
// يتم تنفيذ هذا الكود إذا كان الشرط2 صحيحًا
} else {
// يتم تنفيذ هذا الكود إذا لم يتحقق أي شرط
}
مثال: تحديد الدرجة
JAVA
int score = 85;
if (score >= 90) {
System.out.println("ممتاز");
} else if (score >= 80) {
System.out.println("جيد جداً");
} else if (score >= 70) {
System.out.println("جيد");
} else if (score >= 60) {
System.out.println("مقبول");
} else {
System.out.println("راسب");
}
الجمل الشرطية المتداخلة
JAVA
int age = 25;
boolean hasID = true;
if (age >= 18) {
if (hasID) {
System.out.println("يمكنك الدخول");
} else {
System.out.println("يرجى إحضار بطاقة الهوية");
}
} else {
System.out.println("لا يمكنك الدخول — قاصر");
}
جملة switch
JAVA
switch (التعبير) {
case قيمة1:
// يتم تنفيذ هذا الكود إذا كان التعبير = قيمة1
break;
case قيمة2:
// يتم تنفيذ هذا الكود إذا كان التعبير = قيمة2
break;
default:
// يتم تنفيذ هذا الكود إذا لم يتطابق أي حالة
}
مثال: يوم الأسبوع
JAVA
int day = 3;
switch (day) {
case 1:
System.out.println("الإثنين");
break;
case 2:
System.out.println("الثلاثاء");
break;
case 3:
System.out.println("الأربعاء");
break;
case 4:
System.out.println("الخميس");
break;
case 5:
System.out.println("الجمعة");
break;
case 6:
System.out.println("السبت");
break;
case 7:
System.out.println("الأحد");
break;
default:
System.out.println("يوم غير صالح");
}
switch بدون break (Fall-through)
JAVA
int month = 2;
switch (month) {
case 12: case 1: case 2:
System.out.println("شتاء");
break;
case 3: case 4: case 5:
System.out.println("ربيع");
break;
case 6: case 7: case 8:
System.out.println("صيف");
break;
case 9: case 10: case 11:
System.out.println("خريف");
break;
}
switch المتقدم (Java 14+)
JAVA
String day = "الإثنين";
String type = switch (day) {
case "الجمعة", "السبت" -> "عطلة نهاية الأسبوع";
case "الأحد" -> "بداية الأسبوع";
default -> "يوم عمل";
};
System.out.println(type); // "يوم عمل"
❓ أسئلة شائعة
س ما الفرق بين if و switch؟
ج if مناسب للشروط المعقدة (Ranges، منطق معقد). switch مناسب للمقارنة مع قيم ثابتة.
س لماذا نحتاج break في switch؟
ج بدون break، يستمر البرنامج في تنفيذ الحالات التالية (Fall-through). break يوقف التنفيذ بعد إيجاد التطابق.
س هل يمكن استخدام String في switch؟
ج نعم، منذ Java 7. يمكنك استخدام switch مع String.
📖 ملخص
- if: تنفيذ كود بناءً على شرط
- if-else: تنفيذ أحد مسارين
- if-else if-else: تنفيذ أحد مسارات متعددة
- switch: مقارنة قيمة مع عدة حالات
- break يوقف التنفيذ في switch
- default ينفذ إذا لم يتطابق أي حال
📝 تمارين
- آلة حاسبة: اكتب برنامج يطلب رقمين وعملية (+، -، *، /) وينفذ العملية باستخدام switch
- تصنيف الأعمار: اكتب برنامج يصنف المستخدم إلى طفل (أقل من 13)، مراهق (13-17)، بالغ (18-64)، كبير السن (65+)
- شهور السنة: اكتب برنامج يأخذ رقم الشهر (1-12) ويطبع اسم الشهر وعدد أيامه
الدرس التالي
في الدرس التالي، سنتعلم الحلقات — تكرار العمليات.



