While-loop
I föregående kapitel kunde du se att vi med hjälp av en loop upprepade koden 10 gånger. Nu ska vi undersöka syntaxen för en av dessa loopar.
while-loop
while-loopen är det enklaste exemplet på en loop i praktiken. Denna loop kommer att upprepa en kodblock så länge villkoret i condition-blocket utvärderas till true. När villkoret returnerar false kommer loopen att avslutas.
Main.java
123while (condition) { // code to be executed }
För att minnas hur denna loop fungerar kan du följa en enkel regel: Så länge villkoret är sant, utför operationen. Till exempel, medan det regnar använder jag ett paraply. Så snart regnet upphör går jag utan paraply.
Det regnar - condition
Jag använder ett paraply - koden som körs inuti loopen
Regnet har upphört - kompilatorn lämnar loopen och slutar köra koden inuti loopen.
Nu ska vi titta närmare på en mer detaljerad förklaring av hur while-loopen fungerar:
-
Villkoret utvärderas före varje iteration. Om villkoret är sant körs kodblocket inuti loopen. Om villkoret är falskt avslutas loopen och programmet fortsätter med nästa sats efter loopen;
-
Kodblocket inuti loopen kan innehålla en eller flera satser. Dessa satser kommer att köras upprepade gånger så länge villkoret förblir sant;
-
Det är viktigt att säkerställa att villkoret så småningom blir falskt, annars kommer loopen att köras oändligt och orsaka en oändlig loop.
Här är ett exempel som demonstrerar while-loopen:
Main.java
123456789101112131415package com.example; public class Main { public static void main(String[] args) { int a = 0; int b = 10; while (a != b) { a = a + 1; System.out.println("a has value: " + a); b = b - 1; System.out.println("b has value: " + b); } System.out.println("Is a equal to b: " + (a == b)); } }
I denna kod har vi två variabler av typen int. I vår loop sätter vi ett villkor som lyder: så länge värdet på variabeln a inte är lika med värdet på variabeln b, ökar vi variabeln a och minskar variabeln b. När deras värden är lika avslutar vi while-loopen.
Swipe to start coding
Hitta summan av ett intervall av tal från 1 till n.
- Skapa en metod som heter
sumFrom1ToN(int n)som returnerar ettint-resultat. - Definiera två variabler inuti metoden:
sum(för att lagra totalsumman).current(startar från 1).
- Använd en
while-loop för att upprepa följande steg tillscurrentär större änn:- Lägg till värdet av
currenttillsum. - Öka
currentmed1.
- Lägg till värdet av
- Returnera den totala
sumi slutet av loopen.
Lösning
Tack för dina kommentarer!
single
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
While-loop
Svep för att visa menyn
I föregående kapitel kunde du se att vi med hjälp av en loop upprepade koden 10 gånger. Nu ska vi undersöka syntaxen för en av dessa loopar.
while-loop
while-loopen är det enklaste exemplet på en loop i praktiken. Denna loop kommer att upprepa en kodblock så länge villkoret i condition-blocket utvärderas till true. När villkoret returnerar false kommer loopen att avslutas.
Main.java
123while (condition) { // code to be executed }
För att minnas hur denna loop fungerar kan du följa en enkel regel: Så länge villkoret är sant, utför operationen. Till exempel, medan det regnar använder jag ett paraply. Så snart regnet upphör går jag utan paraply.
Det regnar - condition
Jag använder ett paraply - koden som körs inuti loopen
Regnet har upphört - kompilatorn lämnar loopen och slutar köra koden inuti loopen.
Nu ska vi titta närmare på en mer detaljerad förklaring av hur while-loopen fungerar:
-
Villkoret utvärderas före varje iteration. Om villkoret är sant körs kodblocket inuti loopen. Om villkoret är falskt avslutas loopen och programmet fortsätter med nästa sats efter loopen;
-
Kodblocket inuti loopen kan innehålla en eller flera satser. Dessa satser kommer att köras upprepade gånger så länge villkoret förblir sant;
-
Det är viktigt att säkerställa att villkoret så småningom blir falskt, annars kommer loopen att köras oändligt och orsaka en oändlig loop.
Här är ett exempel som demonstrerar while-loopen:
Main.java
123456789101112131415package com.example; public class Main { public static void main(String[] args) { int a = 0; int b = 10; while (a != b) { a = a + 1; System.out.println("a has value: " + a); b = b - 1; System.out.println("b has value: " + b); } System.out.println("Is a equal to b: " + (a == b)); } }
I denna kod har vi två variabler av typen int. I vår loop sätter vi ett villkor som lyder: så länge värdet på variabeln a inte är lika med värdet på variabeln b, ökar vi variabeln a och minskar variabeln b. När deras värden är lika avslutar vi while-loopen.
Swipe to start coding
Hitta summan av ett intervall av tal från 1 till n.
- Skapa en metod som heter
sumFrom1ToN(int n)som returnerar ettint-resultat. - Definiera två variabler inuti metoden:
sum(för att lagra totalsumman).current(startar från 1).
- Använd en
while-loop för att upprepa följande steg tillscurrentär större änn:- Lägg till värdet av
currenttillsum. - Öka
currentmed1.
- Lägg till värdet av
- Returnera den totala
sumi slutet av loopen.
Lösning
Tack för dina kommentarer!
single