1. Omvänd slinga
Java har en annan typ av whileloop - loopen do-while. Den är väldigt lik den vanliga whileslingan och består också av bara två delar: ett "villkor" och en "slingkropp". Slingkroppen exekveras om och om igen så länge villkoret är true. I allmänhet do-whileser en slinga ut så här:
do
statement;
while (condition);
eller
do
{
block of statements
}
while (condition);
För en whileloop är exekveringssekvensen: condition , loop body , condition , loop body , condition , loop body , ...
Men för en do-whileslinga är det något annorlunda: loop body , condition , loop body , condition , loop body , ...
Faktum är att den enda skillnaden mellan en whileloop och do-whileloop är det faktum att loopkroppen exekveras minst en gång för en do-whileloop.
2. Fördelar med att använda en do-whileslinga
I grund och botten är den enda skillnaden mellan en do-whileloop och en whileloop att kroppen av en do-whileloop exekveras minst en gång.
I allmänhet används en do-whileloop när det inte är meningsfullt att kontrollera loopens tillstånd om loopkroppen inte har exekveras. Till exempel om vissa beräkningar utförs i loopkroppen och sedan används i villkoret .
Exempel:
Programmet läser rader från tangentbordet tills ordet exitmatas in
| medan | göra medan |
|---|---|
|
|
och break- continuesatserna i en do-whileloop fungerar på samma sätt som i en whileloop.
3. Jämföra do-whileloopar: Java vs Pascal
Återigen har Pascal en analog till slingan do-while, men den kallas en repeat-untilslinga. Dessutom skiljer den sig något från slingan do-while. I en repeat-untilslinga anger villkoret när slingan ska lämnas snarare än när den ska fortsätta.
Exempel:
| Pascal | Java |
|---|---|
|
|
Jämfört med Java är sättet som Pascal representerar detta på rent ut sagt vackert. Vi måste börja med exempel från Pascal, annars skrattar du.
GO TO FULL VERSION