في لغة جافا، تُستخدم الكلمتان المفتاحيتان 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) لكسر أو متابعة الحلقات الخارجية إذا لزم الأمر.
أتمنى أن يكون هذا الشرح واضحًا ومفيدًا. إذا كان لديك أي أسئلة أخرى، فلا تتردد في طرحها.
