Ce face for, break și continue
Bucla for are trei părți între paranteze, separate prin ;: inițializarea (rulează o dată, la început), condiția (verificată înainte de fiecare pas) și actualizarea (rulează după fiecare pas). E potrivită când ai nevoie de indice, de exemplu ca să parcurgi un tablou de la coadă sau din doi în doi.
break iese imediat din buclă, iar continue sare peste restul pasului curent și trece la următorul. Ambele afectează doar bucla în care se află direct.
Parametri
| Parametru | Descriere |
|---|---|
inițializare |
De obicei declararea contorului: int i = 0. Variabila există doar în buclă. |
condiție |
Bucla continuă cât timp este true. |
actualizare |
Se execută după fiecare pas: i++, i += 2, i--. |
Exemple
Exemplul 1: Parcurgere cu indice, invers
string[] orase = ["Iași", "Cluj", "Timișoara"];
for (int i = orase.Length - 1; i >= 0; i--)
{
Console.WriteLine($"{i}: {orase[i]}");
}
Rezultat
2: Timișoara
1: Cluj
0: Iași
Exemplul 2: continue și break
Numerele impare sunt sărite cu continue; bucla se oprește complet la primul număr mai mare decât 8.
for (int i = 1; i <= 20; i++)
{
if (i % 2 != 0)
continue;
if (i > 8)
break;
Console.Write($"{i} ");
}
Console.WriteLine();
Console.WriteLine("Gata");
Rezultat
2 4 6 8
Gata
Greșeli frecvente
- Condiția
i <= tablou.Lengthdepășește tabloul cu un element și aruncăIndexOutOfRangeException. Ultimul indice valid esteLength - 1. - Modificarea contorului în corpul buclei (
i++în plus) face codul greu de urmărit și sare elemente. breakdintr-o buclă interioară nu oprește bucla exterioară. Mută codul într-o metodă și foloseștereturn, sau un indicatorbool.
Comenzi înrudite
foreach: Parcurge pe rând fiecare element al unui tablou, al unei liste sau al oricărui IEnumerable, fără indice.while și do-while: Repetă un bloc cât timp o condiție e adevărată; do-while execută blocul cel puțin o dată înainte de verificare.
Întrebări & Exemple de Cod:
for, break și continueAi o nelămurire despre utilizarea comenzii
for, break și continuesau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.