في لغة جافا، تُستخدم الكلمتان المفتاحيتان break
و continue
للتحكم في تدفق تنفيذ الحلقات (for
، while
، do-while
) وتعليمات switch
. تسمحان بتغيير التسلسل الطبيعي للتنفيذ إما عن طريق الخروج من الحلقة أو تخطي التكرار الحالي. إليك شرح مفصل لكل منهما:
1. break
(الخروج من الحلقة):
- يُستخدم
break
لإنهاء الحلقة بشكل فوري. عندما يُصادفbreak
داخل حلقة، يتوقف تنفيذ الحلقة تمامًا، وينتقل التحكم إلى العبارة الأولى التي تلي الحلقة مباشرة. - يمكن استخدام
break
أيضًا مع تعليمةswitch
للخروج من حالة معينة.
مثال على break
مع حلقة for
:
for (int i = 1; i <= 10; i++) { if (i == 5) { break; // الخروج من الحلقة عندما يصبح i يساوي 5 } System.out.println(i);}// سيتم طباعة الأرقام من 1 إلى 4 فقط
في هذا المثال، عندما يصل i
إلى القيمة 5، يتم تنفيذ break
، مما يؤدي إلى الخروج من الحلقة فورًا، ولن يتم طباعة الأرقام 5 إلى 10.
مثال على break
مع تعليمة switch
:
int day = 3;String dayName;switch (day) { case 1: dayName = "الاثنين"; break; case 2: dayName = "الثلاثاء"; break; case 3: dayName = "الأربعاء"; break; default: dayName = "يوم غير صالح";}System.out.println(dayName); // سيتم طباعة "الأربعاء"
في هذا المثال، عندما تكون قيمة day
هي 3، يتم تنفيذ الحالة case 3
، ويتم تعيين قيمة dayName
إلى "الأربعاء"، ثم يتم تنفيذ break
للخروج من تعليمة switch
.
2. continue
(تخطي التكرار الحالي):
- يُستخدم
continue
لتخطي التكرار الحالي في الحلقة والانتقال مباشرة إلى التكرار التالي. بمعنى آخر، عندما يُصادفcontinue
داخل حلقة، يتم تخطي بقية التعليمات داخل الحلقة في هذا التكرار المحدد، ويبدأ التكرار التالي على الفور.
مثال على continue
مع حلقة for
:
for (int i = 1; i <= 10; i++) { if (i == 5) { continue; // تخطي التكرار عندما يصبح i يساوي 5 } System.out.println(i);}// سيتم طباعة الأرقام من 1 إلى 10 باستثناء الرقم 5
في هذا المثال، عندما يصل i
إلى القيمة 5، يتم تنفيذ continue
، مما يؤدي إلى تخطي بقية التعليمات داخل الحلقة في هذا التكرار (أي عدم طباعة الرقم 5)، ثم يبدأ التكرار التالي حيث i
تساوي 6.
الفرق الرئيسي بين break
و continue
:
break
يُنهي الحلقة تمامًا.continue
يتخطى التكرار الحالي وينتقل إلى التكرار التالي.
نصائح وممارسات جيدة:
- استخدم
continue
لتخطي التكرارات غير الضرورية، خاصة في الحلقات التي تتطلب تجاوز شروط معينة. - في الحلقات المتداخلة، ينطبق
break
وcontinue
على الحلقة الداخلية. استخدم عبارات مُعلَّمة (labeled statements
) لكسر أو متابعة الحلقات الخارجية إذا لزم الأمر.
أتمنى أن يكون هذا الشرح واضحًا ومفيدًا. إذا كان لديك أي أسئلة أخرى، فلا تتردد في طرحها.