For-loop
En stor nackdel med while-loopen är att det inte går att ange ett exakt antal iterationer och ha full kontroll över loopens körning. Därför finns for-loopen, som ger alla verktyg för korrekt loopkontroll och även används vid arbete med arrayer och samlingar.
for-loop
for-loopen är ett styrflödesuttryck som möjliggör upprepad körning av en kodblock under ett specificerat antal gånger. Den används ofta när det exakta antalet iterationer är känt eller vid iteration över en samling eller array.
Syntaxen för for-loopen i Java är följande:
Main.java
123for (initialization; condition; update) { // code to be executed }
Om vi går steg för steg, så initierar vi först en variabel i en särskild sektion för detta (vi gjorde samma sak för while-loopen, men då utanför loopen). Därefter anger vi villkoret för när loopen ska köras (till exempel så länge variabeln är mindre än 10). Efter det använder vi en inkrementering eller dekrementering. Nedan finns ett flödesschema och en förklaring av hur varje del av loopens block fungerar:
Här är en uppdelning av varje del i for-loopen:
- Initiering: detta är den initiala inställningen som utförs endast en gång i början av loopen. Vanligtvis deklarerar och initierar du en loopkontrollvariabel här. Till exempel,
int i = 0; - Villkor: detta är villkoret som kontrolleras före varje iteration. Om villkoret är sant, körs loopens kodblock. Om villkoret är falskt, avslutas loopen. Till exempel,
i < 10; - Inkrement-/dekrementuttryck: detta är koden som körs efter varje iteration. Vanligtvis uppdaterar du loopkontrollvariabeln här. Till exempel,
i++(vilket är ekvivalent medi = i + 1); - Kod inuti loopen: detta är kodblocket som körs för varje iteration av loopen. Du kan placera valfri giltig Java-kod inuti loopens kodblock.
Här är ett exempel som visar användningen av en for-loop:
Main.java
123456789package com.example; public class Main { public static void main(String[] args) { for (int i = 0; i < 10; i++) { System.out.println("Iteration: " + i); } } }
I detta exempel kommer loopen att köras 10 gånger. Den startar med att i initialiseras till 0, kontrollerar om i är mindre än 10, kör loopens kropp och uppdaterar sedan i genom att öka den med 1. Denna process upprepas tills villkoret blir falskt.
Det är värt att notera att vi i denna loop kan använda variabeln vi skapade. I vårt fall skriver vi ut variabeln i för att visa iterationsnumret på skärmen.
Detta är mycket användbart, särskilt när vi behöver att vår variabel i ska användas i koden.
Låt oss titta på ett annat exempel där vi behöver visa endast jämna tal i intervallet från 1 till 30.
För att avgöra om ett tal är jämnt eller inte kommer vi att använda operatorn %. Operatorn % i Java används för att få resten av en division. Den hjälper till att kontrollera om ett tal delas jämnt med ett annat, vilket är användbart för att avgöra om ett tal är jämnt.
main.java
1234567891011package com.example; public class Main { public static void main(String[] args) { for (int i = 0; i < 30; i++) { if (i % 2 == 0) { // Check if `i` is even System.out.println(i); } } } }
Bra, i koden ovan använde vi variabeln i vid kontroll av villkoret. Med andra ord representerar i de tal vi överväger. Därefter kontrollerar vi om talet i är jämnt med hjälp av modulo-operationen (%). Om resten vid division med 2 är noll, är talet jämnt, vilket betyder att det är delbart med 2 utan rest.
Föreställ dig att dela 3 med 2. Resten av divisionen är 1. Med %-operatorn ger 3 % 2 resten, vilket är 1. Så i uttrycket i % 2 == 0 är resultatet falskt eftersom resten inte är 0, vilket indikerar att 3 är ett udda tal.
Observera också hur vi satte villkoret för i. Algoritmen för våra åtgärder förblir densamma som tidigare, men i loopvillkoret begränsade vi i till ett värde av 30, enligt uppgiften.
1. Hur många iterationer kommer det att bli?
2. Hur många gånger kommer i att visas
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Fantastiskt!
Completion betyg förbättrat till 2.7
For-loop
Svep för att visa menyn
En stor nackdel med while-loopen är att det inte går att ange ett exakt antal iterationer och ha full kontroll över loopens körning. Därför finns for-loopen, som ger alla verktyg för korrekt loopkontroll och även används vid arbete med arrayer och samlingar.
for-loop
for-loopen är ett styrflödesuttryck som möjliggör upprepad körning av en kodblock under ett specificerat antal gånger. Den används ofta när det exakta antalet iterationer är känt eller vid iteration över en samling eller array.
Syntaxen för for-loopen i Java är följande:
Main.java
123for (initialization; condition; update) { // code to be executed }
Om vi går steg för steg, så initierar vi först en variabel i en särskild sektion för detta (vi gjorde samma sak för while-loopen, men då utanför loopen). Därefter anger vi villkoret för när loopen ska köras (till exempel så länge variabeln är mindre än 10). Efter det använder vi en inkrementering eller dekrementering. Nedan finns ett flödesschema och en förklaring av hur varje del av loopens block fungerar:
Här är en uppdelning av varje del i for-loopen:
- Initiering: detta är den initiala inställningen som utförs endast en gång i början av loopen. Vanligtvis deklarerar och initierar du en loopkontrollvariabel här. Till exempel,
int i = 0; - Villkor: detta är villkoret som kontrolleras före varje iteration. Om villkoret är sant, körs loopens kodblock. Om villkoret är falskt, avslutas loopen. Till exempel,
i < 10; - Inkrement-/dekrementuttryck: detta är koden som körs efter varje iteration. Vanligtvis uppdaterar du loopkontrollvariabeln här. Till exempel,
i++(vilket är ekvivalent medi = i + 1); - Kod inuti loopen: detta är kodblocket som körs för varje iteration av loopen. Du kan placera valfri giltig Java-kod inuti loopens kodblock.
Här är ett exempel som visar användningen av en for-loop:
Main.java
123456789package com.example; public class Main { public static void main(String[] args) { for (int i = 0; i < 10; i++) { System.out.println("Iteration: " + i); } } }
I detta exempel kommer loopen att köras 10 gånger. Den startar med att i initialiseras till 0, kontrollerar om i är mindre än 10, kör loopens kropp och uppdaterar sedan i genom att öka den med 1. Denna process upprepas tills villkoret blir falskt.
Det är värt att notera att vi i denna loop kan använda variabeln vi skapade. I vårt fall skriver vi ut variabeln i för att visa iterationsnumret på skärmen.
Detta är mycket användbart, särskilt när vi behöver att vår variabel i ska användas i koden.
Låt oss titta på ett annat exempel där vi behöver visa endast jämna tal i intervallet från 1 till 30.
För att avgöra om ett tal är jämnt eller inte kommer vi att använda operatorn %. Operatorn % i Java används för att få resten av en division. Den hjälper till att kontrollera om ett tal delas jämnt med ett annat, vilket är användbart för att avgöra om ett tal är jämnt.
main.java
1234567891011package com.example; public class Main { public static void main(String[] args) { for (int i = 0; i < 30; i++) { if (i % 2 == 0) { // Check if `i` is even System.out.println(i); } } } }
Bra, i koden ovan använde vi variabeln i vid kontroll av villkoret. Med andra ord representerar i de tal vi överväger. Därefter kontrollerar vi om talet i är jämnt med hjälp av modulo-operationen (%). Om resten vid division med 2 är noll, är talet jämnt, vilket betyder att det är delbart med 2 utan rest.
Föreställ dig att dela 3 med 2. Resten av divisionen är 1. Med %-operatorn ger 3 % 2 resten, vilket är 1. Så i uttrycket i % 2 == 0 är resultatet falskt eftersom resten inte är 0, vilket indikerar att 3 är ett udda tal.
Observera också hur vi satte villkoret för i. Algoritmen för våra åtgärder förblir densamma som tidigare, men i loopvillkoret begränsade vi i till ett värde av 30, enligt uppgiften.
1. Hur många iterationer kommer det att bli?
2. Hur många gånger kommer i att visas
Tack för dina kommentarer!