Do-While-løkke
Hvad er forskellen mellem while og do-while?
do-while-løkken er en anden type løkke i Java, der ligner while-løkken. Den har dog én vigtig forskel: betingelsen kontrolleres i slutningen af hver iteration. Dette betyder, at kodeblokken altid vil blive udført mindst én gang, før betingelsen evalueres.
Her er den grundlæggende syntaks for do-while-løkken:
Main.java
123do { // Code block } while (condition);
Her er nogle vigtige punkter at huske om do-while-løkken:
-
Eksekveringsforløb: kodeblokken udføres først, og derefter kontrolleres betingelsen. Hvis betingelsen er sand, fortsætter løkken til næste iteration. Hvis betingelsen er falsk, afsluttes løkken, og programmet fortsætter med næste sætning efter løkken;
-
Garanteret eksekvering: da kodeblokken udføres før betingelsen kontrolleres, er
do-while-løkken nyttig, når du vil sikre, at kodeblokken køres mindst én gang, uanset den indledende betingelse; -
Variabelscope: variabler defineret inden for kodeblokken i en
do-while-løkke har et scope, der er begrænset til denne kodeblok. De kan ikke tilgås uden for løkken; -
Anvendelsestilfælde:
do-while-løkken bruges ofte, når du vil bede brugeren om input mindst én gang og derefter fortsætte løkken baseret på en betingelse. Den er også nyttig ved gennemløb af en liste af elementer, hvor det sikres, at løkken kører mindst én gang, selv hvis listen er tom.
Lad os se på et simpelt eksempel på brug og sammenligne resultaterne af en while-løkke og en do-while-løkke i et meget grundlæggende eksempel:
main.java
123456789package com.example; public class Main { public static void main(String[] args) { do { System.out.println("Do-while loop executed successfully"); } while (1 < 0); } }
while-løkke:
main.java
123456789package com.example; public class Main { public static void main(String[] args) { while (1 < 0) { System.out.println("While loop executed successfully"); } } }
Vi kan se, at når vi udfører en do-while-løkke med en betingelse, der altid er false, blev løkkens krop udført én gang, mens while-løkke blot gav en fejl. Dette er den eneste og mest grundlæggende forskel mellem disse to løkker.
1. Hvad vil outputtet af koden være?
2. Hvad vil outputtet af koden være?
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Fantastisk!
Completion rate forbedret til 2.7
Do-While-løkke
Stryg for at vise menuen
Hvad er forskellen mellem while og do-while?
do-while-løkken er en anden type løkke i Java, der ligner while-løkken. Den har dog én vigtig forskel: betingelsen kontrolleres i slutningen af hver iteration. Dette betyder, at kodeblokken altid vil blive udført mindst én gang, før betingelsen evalueres.
Her er den grundlæggende syntaks for do-while-løkken:
Main.java
123do { // Code block } while (condition);
Her er nogle vigtige punkter at huske om do-while-løkken:
-
Eksekveringsforløb: kodeblokken udføres først, og derefter kontrolleres betingelsen. Hvis betingelsen er sand, fortsætter løkken til næste iteration. Hvis betingelsen er falsk, afsluttes løkken, og programmet fortsætter med næste sætning efter løkken;
-
Garanteret eksekvering: da kodeblokken udføres før betingelsen kontrolleres, er
do-while-løkken nyttig, når du vil sikre, at kodeblokken køres mindst én gang, uanset den indledende betingelse; -
Variabelscope: variabler defineret inden for kodeblokken i en
do-while-løkke har et scope, der er begrænset til denne kodeblok. De kan ikke tilgås uden for løkken; -
Anvendelsestilfælde:
do-while-løkken bruges ofte, når du vil bede brugeren om input mindst én gang og derefter fortsætte løkken baseret på en betingelse. Den er også nyttig ved gennemløb af en liste af elementer, hvor det sikres, at løkken kører mindst én gang, selv hvis listen er tom.
Lad os se på et simpelt eksempel på brug og sammenligne resultaterne af en while-løkke og en do-while-løkke i et meget grundlæggende eksempel:
main.java
123456789package com.example; public class Main { public static void main(String[] args) { do { System.out.println("Do-while loop executed successfully"); } while (1 < 0); } }
while-løkke:
main.java
123456789package com.example; public class Main { public static void main(String[] args) { while (1 < 0) { System.out.println("While loop executed successfully"); } } }
Vi kan se, at når vi udfører en do-while-løkke med en betingelse, der altid er false, blev løkkens krop udført én gang, mens while-løkke blot gav en fejl. Dette er den eneste og mest grundlæggende forskel mellem disse to løkker.
1. Hvad vil outputtet af koden være?
2. Hvad vil outputtet af koden være?
Tak for dine kommentarer!