CodeGym /Java-blogg /Tilfeldig /Java For Loop
John Squirrels
Nivå
San Francisco

Java For Loop

Publisert i gruppen
En gang bemerket Mark Zuckerberg at datamaskiner er veldig gode i en repetisjon av kommandoer. Det er ikke enkelt for et menneske, vi blir lei av å gjenta det samme mange ganger på rad, men en datamaskin kan gjøre det millioner og milliarder av ganger og aldri kjede oss. Hvis du prøver å sende hilsener til alle Facebook-brukere, er det ingen mennesker som har dager nok til å gjøre det. Du kan imidlertid lage en datamaskin for å løse denne oppgaven ved å skrive noen få linjer med kode. Slik fungerer løkker. De lar oss ikke gjenta de samme rutinehandlingene. Den mest populære loopen i Java er den såkalte definerte loopen eller for loop.

Hvordan skrive en for loop i Java? For loop generelt

For loop utfører noen utsagn et visst antall ganger. For eksempel å skrive femti ganger «Jeg må ikke være det, ho-ho, ho» eller sende invitasjoner til alle vennene dine er typiske oppgaver for denne typen loop. Syntaksen til den vanligste versjonen av for loop:

for ([counter initialization]; [checking conditions]; [changing of the counter])
{
    //  statements
}
Initialiseringsuttrykket utføres én gang, deretter evalueres betingelsen, som skal være et boolsk uttrykk.
  • Når løkken begynner, utføres initialiseringene.
  • Når forholdene vurderes til å være falske, stopper sløyfen arbeidet.
Telleren endrer seg, vanligvis skjer inkrementering (eller dekrementering) etter hver iterasjon gjennom løkken. Du kan hoppe over hvilket som helst av de tre løkkeuttrykkene (initialisering, kontrolltilstand, endring av telleren). Løkketilstanden kontrolleres før neste trinn i løkken. Hvis betingelsen er falsk, går programmet ut av loopen og fortsetter med instruksjonen etter for-konstruksjonen. Her har vi et blokkskjema over for loop. For loop i Java - 2

Hvordan bruke for loop i Java. Enkelt eksempel.

Her er et spesielt Java for loop eksempel. La oss skrive ti ganger "Hei!" String hver gang det ville være fra den nye linjen med et antall av denne linjen. Vi bør få neste utgang:
  1. Hallo!
  2. Hallo!
  3. Hallo!
  4. Hallo!
  5. Hallo!
  6. Hallo!
  7. Hallo!
  8. Hallo!
  9. Hallo!
  10. Hallo!
Her er vårt Java-program som løser dette problemet:

public class ForExample {
   public static void main(String[] args) {
       for (int i = 0; i < 10; i++) {
           System.out.println(i + 1 + ". Hello!");
       }
   }
}

Hvordan det fungerer?

Trinn 1. Teller i = 0. Loop sjekker tilstanden vår, i << 10, derfor kjøres loop-setninger. Den skriver ut setningen "1. Hallo!". 1 er en streng i + 1 (fordi vi telte fra null, men den første linjen er fortsatt den første). Teller i økes. Nå er i = 1. Trinn 2. Teller i = 1. i < 10, så vi har en setning "2. Hallo!" og i + 1 = 2. … Trinn 10. Teller i = 9, vi har "10. Hallo!" og i økes til 10. Trinn 11. Teller i = 10. i < 10 ? Nei, det er usant. Derfor er sløyfen avsluttet. For loop i Java - 3

Mens loop og for loop: forskjeller og likheter

I Java kjøres ubestemt sløyfe eller while-løkke kontinuerlig hvis den boolske betingelsen går i oppfyllelse. Syntaksen til while loop:

while (boolean condition)
       {
            loop statements...
       }
Ganske ofte kan du velge hvilken løkke du vil bruke. Noen ganger er de veldig nærme, og du kan bruke dem begge. For eksempel, her er koden for samme oppgave (skriv ti ganger "Hallo!" med et nummer på linjen) skrev med while loop:

public class ForAndForEach {
   public static void main(String[] args) {
       int j = 0;  //  we use the counter this way 
       while (j < 10) {
           System.out.println(j + 1 + ". Hello!");
           j++;
       }
   }
}
Imidlertid liker ikke profesjonelle programmerere while-løkken, og der det er mulig, prøv å bruke for-løkken.
TIL SAMTIDIG SOM

Vi bruker for-løkken hvis vi allerede visste antall iterasjoner.

Vi bruker while loop hvis vi ikke vet nøyaktig antall iterasjoner.

Initialisering, tilstandskontroll og tellendring er allerede satt sammen i syntaksen til en løkke

Initialisering og tilstandskontroll inne i loopen. Du kan i tillegg bruke teller i uttalelser.

Uendelig sløyfe for:


for(;;){
	System.out.println("working...");
}

Uendelig sløyfe mens:


while(true){
	System.out.println("working...");
}

Hvordan avslutte en for loop i java

Vanligvis kjører en for-løkke som en flyt, og den naturlige måten å gå ut av en løkke på er når en betingelse har en falsk verdi. Det er imidlertid to kontrollsetninger som lar deg gå ut av løkken før du får den falske verdien av en betingelse - bryt og fortsett.
  • break lar deg gå ut av gjeldende sløyfe som om sløyfetilstanden har evaluert til falsk.
  • Fortsett gjør at loopen hopper til neste trinn (iterer telleren) uten å utføre setningene.
La oss løse det neste problemet ved å bruke pause og fortsette. Vi har en rekke navn, og vi sier hei til alle fra denne gruppen bortsett fra de fremmede. Så hvis vi møter en "Stranger"-streng under loopen vår, går vi ut av den (gå bort og stoppe for å si hei til noen andre).

public class ForBreakExample {
   public static void main(String[] args) {
       String[] names = {"Mike", "Dustin", "Stranger", "Lucas", "Will"};
       for (int i = 0; i < names.length; i++) {
//  how to break out of a for loop, java: check if we have any "Stranger" in  //  our array            
if (names[i].equals("Stranger")) {
               System.out.println("I don't chat with strangers");
               break;
           }
           System.out.println("Hello," + names[i]);
       }
   }
}
Resultatet av vår programkjøring er:

Hello,Mike
Hello,Dustin
I don't chat with strangers
Se? Vi løp fra løkka før vi hilste på Lucas og Will. La oss nå bruke fortsette, bare for å ignorere en «fremmed», men holde oss innenfor loopen for å si hei til andre venner.

public class ForContinueExample {
   public static void main(String[] args) {
       String[] names = {"Mike", "Dustin", "Stranger", "Lucas", "Will"};
       for (int i = 0; i < names.length; i++) {
           if (names[i].equals("Stranger")) {
               System.out.println("I don't chat with strangers");
               continue;
           }
           System.out.println("Hello," + names[i]);
       }
   }
}
Resultatet er:

Hello,Mike
Hello,Dustin
I don't chat with strangers
Hello,Lucas
Hello,Will
Utmerket! Vi hilste på alle vennene, men snakket ikke med en fremmed.

Forbedret versjon av for loop eller for hver

For-each er en slags for-løkke som brukes når du skal behandle alle elementene i en matrise eller samling. Faktisk brukes ikke selve uttrykket for-hver i denne syklusen. Syntaksen er som følger:

for (type itVar: array)
{
    Block of operators;
}
Der type er typen til den iterative variabelen (det samme som datatypen til arrayen), er ItVar navnet, array er arrayen eller det kan være en annen datastruktur, for eksempel ArrayList. Som du kan se, er det ingen teller, iterasjonsvariabelen itererer over elementene i en matrise eller samling, og ikke indeksverdiene. Når en slik sløyfe utføres, blir iterasjonsvariabelen sekvensielt tildelt verdien til hvert element i matrisen eller samlingen, hvoretter den spesifiserte blokken med setninger (eller operatoren) utføres. OBS: for-each-løkken kan brukes på arrays og alle klasser som implementerer java.lang.Iterable-grensesnittet. La oss løse det samme problemet med hilsener til venner, ignorere fremmede ("Stranger"), men denne gangen bruker vi for hver løkke.

public class ForEachExample {
   public static void main(String[] args) {
       String[] names = {"Mike", "Dustin", "Stranger", "Lucas", "Will"};
	//  for each loop, Java code
       for (String name : names) {
           if (name.equals("Stranger")) {
               System.out.println("I don't chat with strangers");
               continue;
           }
           System.out.println("hello, " + name);
       }
   }
}
For å forsterke det du lærte, foreslår vi at du ser en videoleksjon fra vårt Java-kurs
Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION