For-hver loop i java - Bruke forskjellige forhold - eksempler

Innholdsfortegnelse:

Anonim

Introduksjon til For-loop i Java

For hver sløyfe er introdusert i Java med utgangspunkt i JDK 5. Den tar sikte på å iterere sekvensielt gjennom alle elementene i en samling eller en gruppe. Det er også der på andre språk som C #, der det bruker nøkkelordet for hver. Imidlertid bruker Java nøkkelordet 'for' bare for å implementere for hver loop i motsetning til C #, men syntaks skiller seg fra det konvensjonelle for en loop. Denne for hver sløyfe er også kjent som forbedret for loop i Java.

syntax

for(type iter_var : Collection) statement_block

Forklaringen for hvert av begrepene brukt ovenfor er som følger:

  1. 'type' indikerer datatypen til objektene til
  2. 'iter_var' indikerer iterasjonsvariabelnavnet som lagrer hver verdi av samlingen når vi itererer gjennom løkken.
  3. 'Collection' spesifiserer samlingen eller arrayet vi ønsker å iterere gjennom.
  4. "statement-block" er settet med uttalelser som vi ønsker å utføre for hver iterasjon av løkken.

Det er viktig å merke seg at for-hver loop får tilgang til samle / array-elementene i rekkefølge der den lagrer verdien av hvert element i iterasjonsvariabelen. Følgende er flytskjemaet for hver sløyfe.

Som du har lagt merke til, er det visse subtile forskjeller mellom for loop og for hver loop. For loop krever at antall iterasjoner skal spesifiseres på forhånd. Dette er imidlertid ikke tilfelle med for hver sløyfe, ettersom sløyfen itererer fra det første elementet til det siste elementet i samlingen / arrayen og ikke trenger antall iterasjoner som skal spesifiseres.

Et viktig poeng som må huskes er at typen som er spesifisert i for-hver loop, må samsvare med typen elementer i samlingen, fordi det ellers vil være kompatibilitetsproblemer.

eksempler

For sløyfe

La oss finne gjennomsnittsalderen for en gruppe mennesker som bruker sløyfe:

Kode

public class Main
(
public static void main(String() args) (
int ages() = (15, 18, 16, 17, 14, 12, 13, 20, 22, 25);
int sum = 0;
System.out.print("Ages of the group are : "); for (int i = 0; i < 10 ; i++)
(
System.out.print(ages(i)+" "); sum += ages(i);
)
System.out.println("\n Average age of the group = " + (sum/10));
)
)

Produksjon:

For hver sløyfe

Slik finner du gjennomsnittsalderen for en gruppe mennesker som bruker en for hver sløyfe:

Kode

public class Main
(
public static void main(String() args) (
int ages() = (15, 18, 16, 17, 14, 12, 13, 20, 22, 25);
int sum = 0;
System.out.print("Ages of the group are : "); for (int x : ages)
(
System.out.print(x+" "); sum += x;
)
System.out.println("\n Average age of the group = " + (sum/10));
)
)

Produksjon:

Utgangen er den samme ved å bruke begge løkkene som vist fra figurene ovenfor.

Foreach loop ved bruk av Break Statement

Det er mulig å redusere antall iterasjoner av hver-sløyfen ved å bruke en pause-setning. For eksempel, hvis vi ønsker å finne summen av bare de første 5 elementene, kan vi bruke pausesetningen som følger:

Kode

public class Main
(
public static void main(String() args) (
int ages() = (15, 18, 16, 17, 14, 12, 13, 20, 22, 25);
int ctr = 0, sum = 0;
System.out.print("Ages of the group are : "); for (int x : ages)
(
System.out.print(x+" ");
)
for (int x : ages)
(
if (ctr == 5) break; sum += x;
ctr += 1;
)
System.out.println("\nSum of age of first 5 people of the group = " + sum);
)
)

Produksjon:

I den for hver sløyfe som er nevnt ovenfor, er x iterasjonsvariabelen som lagrer ett element av arrayen per iterasjon som endres i neste iterasjon. I den første iterasjonen lagrer x det første elementet i matrisen og det siste elementet i matrisen i den siste iterasjonen. I motsetning til for loop, der vi får tilgang til elementene i matrisen ved hjelp av indeksen, bruker hver iterasjonsvariabel for hver loop for å få tilgang til elementene.

Det må utvises forsiktighet ved å bruke for hver sløyfe, fordi iterasjonsvariabelen lagrer verdien av arrayelementet midlertidig, da det er "skrivebeskyttet", og endring av verdien endrer ikke den opprinnelige arrayen. Dette motsier for sløyfe der å endre et element endrer det opprinnelige arrayet.

La oss vurdere et eksempel der vi legger til 5 til hvert element i matrisen. Vi kan se forskjellen i utdataene i følgende eksempelkode:

For sløyfe med ulik tilstand

Kode

public class Main
(
public static void main(String() args) (
int ages() = (15, 18, 16, 17, 14, 12, 13, 20, 22, 25);
System.out.print("Elements of the array are : "); for (int i = 0; i < 10; i++)
(
System.out.print(ages(i)+" "); ages(i)+= 5;
)
System.out.print("\nNew elements of the array are : "); for (int i = 0; i < 10; i++)
(
System.out.print(ages(i)+" ");
)
)
)

Produksjon:

Utgangen til for loop som viser oppdatering av den opprinnelige matrisen

Foreach loop med ulik tilstand

Kode

public class Main
(
public static void main(String() args) (
int ages() = (15, 18, 16, 17, 14, 12, 13, 20, 22, 25);
System.out.print("Elements of the array are : "); for (int x : ages)
(
System.out.print(x+" "); x += 5;
)
System.out.print("\nNew elements of the array are : "); for (int x : ages)
(
System.out.print(x+" ");
)
)
)

Produksjon:

Utgangen fra den for hver loop viser ingen oppdateringer av den opprinnelige arrayen

Ting å huske på for hver loop i java

  1. For-Hver loop i java brukes til å iterere gjennom matrise / samleelementer i en sekvens.
  2. For-Hver loop i java bruker iterasjonsvariabelen for å iterere over en samling eller en rekke elementer.
  3. Endring av iterasjonsvariabelen endrer ikke den opprinnelige matrisen / samlingen da den er skrivebeskyttet.
  4. Type i hver sløyfe må samsvare med typen originale array / samling elementer.
  5. Foreach-sløyfen trenger ikke antall iterasjoner som skal spesifiseres ettersom den itererer over alle elementene i samlingen.
  6. Det er mulig å stoppe for-hver-sløyfen ved å bruke en pauseanvisning.

Anbefalte artikler

Dette er en guide til For-Hver loop i java. Her diskuterer vi For-Hver-loopen i java med dens kodeimplementering på forskjellige måter som er med break statement og med de forskjellige forholdene. Du kan også se på følgende artikler for å lære mer -

  1. Print Array i Java
  2. Looper i Java-programmering
  3. Mens Loop i Java
  4. 3D-matriser i Java
  5. Java-distribusjonsverktøy
  6. 3D Arrays i C ++
  7. For Loop i C
  8. Arrays i Java-programmering