Pentru fiecare buclă Java

⚡ Rezumat inteligent

Pentru fiecare buclă Java este o formă simplificată a buclei for utilizată pentru a parcurge tablouri și liste fără contor sau index. Această resursă explică sintaxa for-each, o compară cu bucla for tradițională și prezintă un exemplu complet de funcționare cu rezultatul așteptat.

  • 🔁 Scop: Bucla for-each iterează direct peste fiecare element al unui tablou sau al unei liste, reducând codul.
  • 🧮 Fără contor: Spre deosebire de o buclă for tradițională, for-each nu necesită index, condiție sau increment.
  • 🧩 Sintaxă: Declară o variabilă temporară al cărei tip corespunde colecției, apoi colecția de iterat.
  • 🇧🇷 Comparaţie: Exemplul arată aceeași ieșire dintr-o buclă bazată pe contor și o buclă for-each.
  • ⚠️ Prescripţie: Bucla for-each nu oferă niciun index, deci nu poate modifica cu ușurință elementele subiacente.

Pentru fiecare buclă Java

Java Pentru fiecare matrice

Bucla For-Each este o altă formă de buclă for utilizată pentru a parcurge matricea. Bucla for-each reduce semnificativ codul și nu se folosește indexul, sau mai degrabă contorul, în buclă.

Sintaxă:

for (<DataType of array/List> <Temp variable name> : <Array/List to be iterated>) {
    System.out.println();
    // Any other operation can be done with this temp variable.
}

Buclă/Iterează o matrice în Java

Să luăm exemplul utilizând o matrice String pe care doriți să o iterați fără a utiliza contoare. Luați în considerare o matrice String arrData inițializată după cum urmează:

String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};

Deși s-ar putea să cunoașteți metode precum găsirea dimensiunii mulțime și apoi iterând prin fiecare element al matricei folosind bucla tradițională for (contor, condiție și increment), avem nevoie de o abordare mai optimizată, care să nu utilizeze niciun astfel de contor.

Aceasta este abordarea convențională a buclei „for”:

for (int i = 0; i < arrData.length; i++) {
    System.out.println(arrData[i]);
}

Puteți vedea utilizarea contorului și apoi utilizarea sa ca index pentru matrice. Java oferă o modalitate de a utiliza bucla „for” care va itera prin fiecare element al matricei.

Iată codul pentru array-ul pe care l-am declarat anterior:

for (String strTemp : arrData) {
    System.out.println(strTemp);
}

Puteți vedea diferența dintre bucle. Codul s-a redus semnificativ. De asemenea, nu se mai folosește indexul, sau mai degrabă contorul, în buclă. Asigurați-vă că tipul de date declarat în bucla for-each se potrivește cu tipul de date al buclei. ArrayList pe care îl repeți.

Pentru fiecare buclă Exemplu

Iată întreaga clasă care prezintă explicația de mai sus:

class UsingForEach {
  public static void main(String[] args) {
    String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};
    //The conventional approach of using the for loop
    System.out.println("Using conventional For Loop:");
    for(int i=0; i< arrData.length; i++){
      System.out.println(arrData[i]);
    }
    System.out.println("\nUsing Foreach loop:");
    //The optimized method of using the for loop - also called the foreach loop
    for (String strTemp : arrData){
      System.out.println(strTemp);
    }
  }
}

Iterați o matrice în Java

Ieșire preconizată:

Using conventional For Loop:
Alpha
Beta
Gamma
Delta
Sigma

Using Foreach loop:
Alpha
Beta
Gamma
Delta
Sigma

Întrebări frecvente

Da. Asistenții inteligenți artificiali pot refactoriza buclele bazate pe index în bucle for-each unde indexul nu este necesar. Ar trebui să examinați în continuare cazurile care se bazează pe index pentru modificarea poziției sau a elementului.

Instrumentele de inteligență artificială sugerează adesea bucla for-each pentru lizibilitate atunci când indexul nu este utilizat, în timp ce keeping bucle indexate în care poziția elementului sau modificarea acestuia contează. Alegerea depinde de sarcina specifică.

O buclă for tradițională folosește un contor și un index pentru a controla iterația. Bucla for-each iterează fiecare element direct, fără contor, îmbunătățind lizibilitatea, dar fără a oferi un index pentru accesul la elemente.

Modificarea variabilei buclei nu actualizează elementul matricei subiacente, deoarece aceasta conține o copie a valorii. Pentru a modifica elementele la locul lor, utilizați o buclă for tradițională cu un index.

Rezumați această postare cu: