break
و continue
للتحكم في تدفق تنفيذ الحلقات التكرارية (loops) مثل for
و while
و do-while
و foreach
.break
:
تُستخدم break
للخروج من الحلقة التكرارية بشكل فوري. عند مصادفة تعليمة break
داخل حلقة، يتوقف تنفيذ الحلقة تمامًا، وينتقل التحكم إلى التعليمة التي تلي الحلقة مباشرةً.
مثال:
for (int i = 1; i <= 10; i++){ if (i == 5) { break; // الخروج من الحلقة عندما يصبح i مساوياً لـ 5 } Console.WriteLine(i);}// سيطبع البرنامج الأرقام من 1 إلى 4 فقط، ثم يتوقف.
في هذا المثال، عند وصول قيمة i
إلى 5، يتم تنفيذ تعليمة break
، مما يؤدي إلى الخروج من حلقة for
، وبالتالي لن يتم طباعة الأرقام 5 إلى 10.
continue
:
تُستخدم continue
لتخطي دورة واحدة من الحلقة، والانتقال مباشرةً إلى بداية الدورة التالية. بمعنى آخر، عند مصادفة تعليمة continue
، يتم تجاهل بقية التعليمات داخل الدورة الحالية، ويبدأ تنفيذ الدورة التالية.
مثال:
for (int i = 1; i <= 10; i++){ if (i == 5) { continue; // تخطي طباعة الرقم 5 } Console.WriteLine(i);}// سيطبع البرنامج الأرقام من 1 إلى 10 باستثناء الرقم 5.
في هذا المثال، عند وصول قيمة i
إلى 5، يتم تنفيذ تعليمة continue
، مما يؤدي إلى تخطي تعليمة Console.WriteLine(i)
في هذه الدورة، وبالتالي لن يتم طباعة الرقم 5، ولكن سيستمر تنفيذ الحلقة وطباعة بقية الأرقام.
الفرق الرئيسي بين break
و continue
:
break
يخرج من الحلقة بشكل كامل.continue
ينتقل إلى بداية الدورة التالية في الحلقة.
استخدامات أخرى لـ break
:
بالإضافة إلى استخدامها في الحلقات، تُستخدم break
أيضًا في تعليمة switch
للخروج من حالة case
محددة.
مثال:
int day = 3;switch (day){ case 1: Console.WriteLine("Monday"); break; case 2: Console.WriteLine("Tuesday"); break; case 3: Console.WriteLine("Wednesday"); break; default: Console.WriteLine("Invalid day"); break;}// سيطبع البرنامج "Wednesday".
في هذا المثال، تُستخدم break
للخروج من تعليمة switch
بعد تنفيذ الحالة المطابقة.
باختصار، break
و continue
أدوات قوية للتحكم في تدفق تنفيذ الحلقات، وتساعدان في كتابة أكواد أكثر مرونة وكفاءة. أتمنى أن يكون هذا الشرح واضحاً ومفيداً.