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؟ متى نستخدم أي عبارة؟ وهل هناك أي خفايا؟