logo

För Loop in Java

Slingor i Java kommer till användning när vi upprepade gånger behöver köra ett block med satser. Java för loop ger ett kortfattat sätt att skriva loopstrukturen. For-satsen förbrukar initieringen, villkoret och ökningen/minskningen på en rad och ger därigenom en kortare struktur för looping som är lätt att felsöka. Låt oss förstå Java för loop med exempel.

För Loop in Java

Syntax:

for (initialization expr; test expr; update exp) {  // body of the loop  // statements we want to execute }>

Delar av Java For Loop

Java for loop är uppdelad i olika delar som nämns nedan:



  • Initialiseringsuttryck
  • Testuttryck
  • Uppdatera uttryck

1. Initialiseringsuttryck

I detta uttryck måste vi initiera loopräknaren till något värde.

Exempel:

int i=1;>

2. Testuttryck

I detta uttryck måste vi testa tillståndet. Om villkoret utvärderas till sant kommer vi att köra slingans brödtext och gå till uppdateringsuttrycket. Annars kommer vi att lämna for a loop.

Exempel:

i <= 10>

3. Uppdatera uttryck :

Efter att ha kört loopkroppen ökar/minskar detta uttryck loopvariabeln med något värde.

Exempel:

i++;>

Hur fungerar en For-loop?

  1. Kontrollen faller in i for-slingan. Initiering är gjord
  2. Flödet hoppar till skick
  3. Skicket är testat.
    • Om tillståndet är sant, går flödet in i kroppen
    • Om villkoret ger falskt, går flödet utanför slingan
  4. Uttalandet inuti slingans kropp exekveras.
  5. Flödet går till uppdateringen
  6. Uppdatering sker och flödet går till steg 3 igen
  7. For-slingan har avslutats och flödet har gått utanför.

Flödesschema för för loop i Java

Flödesschema för loop i Java

Flödesschema för loop i Java

Exempel på Java For loop

Exempel 1: ( Detta program kommer att skriva ut 1 till 10)

Java




/*package whatever //do not write package name here */> // Java program to write a code in for loop from 1 to 10> class> GFG {> >public> static> void> main(String[] args)> >{> >for> (>int> i =>1>; i <=>10>; i++) {> >System.out.println(i);> >}> >}> }>

>

>

Produktion

1 2 3 4 5 6 7 8 9 10>

Exempel 2: Det här programmet kommer att försöka skriva ut Hello World 5 gånger.

Java


genomgång av postorder



// Java program to illustrate for loop> class> forLoopDemo {> >public> static> void> main(String args[])> >{> >// Writing a for loop> >// to print Hello World 5 times> >for> (>int> i =>1>; i <=>5>; i++)> >System.out.println(>'Hello World'>);> >}> }>

>

>

Produktion

Hello World Hello World Hello World Hello World Hello World>

Metodens komplexitet:

Tidskomplexitet: O(1)
Hjälputrymme: O(1)

Torrkörningsexempel 1

Programmet kommer att köras på följande sätt.

  1. Programmet startar.
  2. i initieras med värde 1.
  3. Skick är kontrollerat. 1 <= 5 ger sant.
    1. Hello World skrivs ut första gången.
    2. Uppdatering är gjord. Nu är jag = 2.
  4. Skick är kontrollerat. 2 <= 5 ger sant.
    1. Hello World skrivs ut för andra gången.
    2. Uppdatering är gjord. Nu är jag = 3.
  5. Skick är kontrollerat. 3 <= 5 ger sant.
    1. Hello World skrivs ut för tredje gången
    2. Uppdatering är gjord. Nu är jag = 4.
  6. Skick är kontrollerat. 4 <= 5 ger sant.
    1. Hello World skrivs ut för fjärde gången
    2. Uppdatering är gjord. Nu är jag = 5.
  7. Skick är kontrollerat. 5 <= 5 ger sant.
    1. Hello World skrivs ut femte gången
    2. Uppdatering är gjord. Nu är jag = 6.
  8. Skick är kontrollerat. 6 <= 5 ger falskt.
  9. Flödet går utanför slingan. Programmet avslutas.

Exempel 3: (Programmet skriver ut summan av x från 1 till 20)

Java




// Java program to illustrate for loop.> class> forLoopDemo {> >public> static> void> main(String args[])> >{> >int> sum =>0>;> >// for loop begins> >// and runs till x <= 20> >for> (>int> x =>1>; x <=>20>; x++) {> >sum = sum + x;> >}> >System.out.println(>'Sum: '> + sum);> >}> }>

>

>

Produktion

Sum: 210>

Kapslad för loop i Java

Java Nested For Loop är ett koncept för att använda en for-loop inuti en annan for-loop (liknande det att använda kapslad if-else). Låt oss förstå detta med ett exempel som nämns nedan:

Java




// Java Program to implement> // Nested for loop> import> java.io.*;> // Driver Class> class> GFG {> >// main function> >public> static> void> main(String[] args)> >{> >// Printing a 1 to 5 (5 times)> >// first loop> >for> (>int> i =>1>; i <=>5>; i++) {> >// second loop> >for> (>int> j =>1>; j <=>5>; j++) {> >System.out.print(j +>' '>);> >}> >System.out.println();> >}> >}> }>

java-kodning if else-sats
>

>

Produktion

1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5>

För att veta mer om Nested loops se Kapslade loopar i Java .

Java för varje slinga

Förbättrad för loop eller Java For-Each loop i Java är en annan version av for loop introducerad i Java 5. Enhanced for loop ger ett enklare sätt att iterera genom elementen i en samling eller array. Den är oflexibel och bör endast användas när det finns ett behov av att iterera genom elementen på ett sekventiellt sätt utan att känna till indexet för det för närvarande bearbetade elementet.

Notera: Objektet/variabeln är oföränderlig när förbättrad för loop används, dvs den säkerställer att värdena i arrayen inte kan modifieras, så det kan sägas som en skrivskyddad loop där du inte kan uppdatera värdena i motsats till andra loopar där värden kan ändras.

Syntax:

for (T element:Collection obj/array) {  // loop body  // statement(s) }>

Låt oss ta ett exempel för att visa hur Enhanced for loop kan användas för att förenkla arbetet. Anta att det finns en array av namn och vi vill skriva ut alla namn i den arrayen. Låt oss se skillnaden mellan dessa två exempel genom denna enkla implementering:

Java




// Java program to illustrate enhanced for loop> public> class> enhancedforloop {> >// Main Function> >public> static> void> main(String args[])> >{> >// String array> >String array[] = {>'Ron'>,>'Harry'>,>'Hermoine'> };> >// enhanced for loop> >for> (String x : array) {> >System.out.println(x);> >}> >/* for loop for same function> >for (int i = 0; i { System.out.println(array[i]); } */ } }>

>

>

Produktion

Ron Harry Hermoine>

Komplexiteten av ovanstående metod:

Tidskomplexitet: O(1)
Hjälputrymme: O(1)

Rekommendation: Använd denna form av uttalande istället för den allmänna formen när det är möjligt. (enligt JAVA-dokument.)

mysql list användare

Java Infinite för Loop

Detta är en oändlig loop eftersom villkoret aldrig skulle returnera falskt. Initieringssteget är att ställa in värdet på variabeln i till 1, eftersom vi ökar värdet på i, skulle det alltid vara större än 1 så att det aldrig skulle returnera falskt. Detta skulle så småningom leda till det oändliga looptillståndet.

Exempel:

Java




// Java infinite loop> class> GFG {> >public> static> void> main(String args[])> >{> >for> (>int> i =>1>; i>=>1>; i++) {> >System.out.println(>'Infinite Loop '> + i);> >}> >}> }>

>

>

Produktion

Infinite Loop 1 Infinite Loop 2 ...>

Det finns en annan metod för att anropa den oändliga slingan

Om du använder två semikolon ;; i for-slingan kommer det att vara infinitiv för en loop.

Syntax:

for(;;){   //code to be executed  }>

Exempel:

Java




public> class> GFG {> >public> static> void> main(String[] args)> >{> >for> (;;) {> >System.out.println(>'infinitive loop'>);> >}> >}> }>

>

>

Produktion

infinitive loop infinitive loop ....>

Vanliga frågor om Java for Loop

1. Vad är en for-loop i Java?

For loop i Java är en typ av loop som används för upprepad exekvering av en blockkod tills villkoret är uppfyllt.

2. Vad är syntaxen för för loop?

Syntax för för loop nämns nedan:

for (initialization expr; test expr; update exp) {  // body of the loop  // statements we want to execute }>

3. Varför används en for loop?

For loop används när vi behöver upprepa samma påståenden ett känt antal gånger.

Måste referera: