Avatar ·

C#: break против continue — в чем разница в циклах?

مرحبًا بالجميع. لقد بدأت للتو في تعلم C#، وأصبحت مرتبكًا بشأن العبارات break و continue داخل الحلقات (for, while, foreach). أفهم أن كلاهما يؤثر بطريقة ما على تنفيذ الحلقة، لكنني لا أستطيع فهم الفرق المحدد. على سبيل المثال، لدي هذا الكود: ```csharp for (int i = 0; i < 10; i++) { if (i == 5) { break; } Console.WriteLine(i); } ``` توقعت أن يطبع الأرقام من 0 إلى 9، لكنه طبع فقط 0, 1, 2, 3, 4. لماذا؟ ظننت أن break يتخطى التكرار فقط عندما i == 5. ومثال آخر مع continue: ```csharp for (int i = 0; i < 10; i++) { if (i == 5) { continue; } Console.WriteLine(i); } ``` هذا الكود طبع جميع الأرقام من 0 إلى 9، باستثناء 5. أي أن continue يتخطى التكرار بالفعل؟ لكن لماذا يتصرف break بشكل مختلف؟ اشرح لي، من فضلك، بكلمات بسيطة: ما الفرق الجوهري بين break و continue؟ متى نستخدم أي عبارة؟ وهل هناك أي خفايا؟