Pentru fiecare exemplu: Îmbunătățit pentru ca bucla să itereze matricea Java

Anonim

For-Each Loop este o altă formă de buclă for utilizată pentru a traversa matricea. pentru fiecare buclă reduce codul în mod semnificativ și nu există nicio utilizare a indexului sau mai degrabă a contorului în buclă.

Sintaxă:

For( : ){System.out.println();//Any other operation can be done with this temp variable.}

Să luăm exemplul folosind o matrice de șiruri pe care doriți să o repetați fără a utiliza contoare.

Luați în considerare o matrice de șiruri 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 matricei și apoi iterarea prin fiecare element al matricei folosind bucla tradițională (contor, condiție și increment), trebuie să găsim o abordare mai optimizată care să nu folosească niciun astfel de contor .

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

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

Puteți vedea utilizarea contorului și apoi utilizați-l ca index pentru matrice.

Java oferă o modalitate de a utiliza bucla „pentru” care va itera prin fiecare element al matricei.

Iată codul pentru matricea pe care o declarasem mai devreme-
for (String strTemp : arrData){System.out.println(strTemp);}

Puteți vedea diferența dintre bucle. Codul s-a redus semnificativ. De asemenea, nu există nicio utilizare a indexului sau mai degrabă a contorului în buclă.

Asigurați-vă că tipul de date declarat în bucla foreach trebuie să se potrivească cu tipul de date al matricei / listei pe care o iterați.

Aici avem întreaga clasă care arată explicația de mai sus-
clasa UsingForEach {public static main main (String [] args) {String [] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};// Abordarea convențională a utilizării buclei forSystem.out.println ("Utilizarea convențională pentru buclă:");for (int i = 0; i 

Ieșire:

Using conventional For Loop:AlphaBetaGammaDeltaSigmaUsing Foreach loop:AlphaBetaGammaDeltaSigma