U ovom ćete članku naučiti koristiti izjavu continue za prijenos kontrole nad programom.
Dok radite s petljama ili uvjetnim izrazima, možda ćete trebati preskočiti neke izraze unutar petlje ili odmah prekinuti petlju bez provjere probnog izraza.
U takvim se slučajevima koriste izjave break i continue. Posjetite stranicu da biste saznali više o izjavi o prekidu.
Naredba continue zaustavlja izvršavanje naredbi unutar petlje ili naredbe switch. Zatim preskače natrag kako bi ponovno procijenio testni izraz petlje.
Sintaksa naredbe continue je:
nastaviti
Kako funkcionira nastavak izjave?
Primjer 1: Brzi nastavak izraza u petlji for
for i in 1… 5 ( if i == 4 ( continue ) print("i = (i)") )
Kada pokrenete program, izlaz će biti:
i = 1 i = 2 i = 3 i = 5
U gore navedenom programu, niz koji se ponavlja je u rasponu od 1 do 5.
Vrijednost i postavlja se na prvi broj u rasponu (1) i ažurira na sljedeći broj raspona na svakoj iteraciji.
Petlja također sadrži izraz if s izrazom i == 4
. Izraz kada se procijeni na tačno (na 4. iteraciji) izvršava continue
izraz, preskače izvršavanje izraza print("i = (i)")
i prelazi na sljedeću iteraciju (i = 5).
Primjer 2: Brzi nastavak izraza u while petlji
var intialLevel:Int = -5, finalLevel:Int = 2 var currentLevel:Int = intialLevel while currentLevel < finalLevel ( if intialLevel < 0 ( print("Starting level must be positive") intialLevel = 0 currentLevel = intialLevel continue //skips the current execution ) currentLevel += 1 print("next level") ) print("outside of while loop")
Kada pokrenete program, izlaz će biti:
Početna razina mora biti pozitivna sljedeća razina sljedeća razina izvan while petlje
U gornjem programu, petlja while traje dok currentLevel ne bude manji od finalLevel. Budući da je intialLevel dodijeljena vrijednost -5 i manja je od 0, izrazi unutar izvršenja if
.
Kad program dođe do continue
izraza, preskače izraze while petlje i preskače da ponovno provjeri stanje currentLevel < finalLevel
.
Primjer 3: Naredba Swift continue s ugniježđenim petljama
for j in 1… 2 ( for i in 1… 5 ( if i == 4 ( continue ) print("i = (i)") ) print("j = (j)") )
Kada pokrenete program, izlaz će biti:
i = 1 i = 2 i = 3 i = 5 j = 1 i = 1 i = 2 i = 3 i = 5
U gornjem programu, continue
naredba unutar if i == 4
jedinog preskače izvršavanje naredbe print("i = (i)")
unutar unutarnje petlje for. Međutim, ne preskače izvršavanje vanjske petlje for i in 1… 5
.
Ali, što ako želite continue
i vanjsku petlju. Za to trebate koristiti označene izjave u Swiftu.
Označena izjava s continue
Izjave koji imaju prefikse u obliku (oznaka: Izjava) nazivaju se označenim iskazima. Oznaka je identifikator na koji se možete pozvati kasnije u prekidu ili u nastavku izraza. Da biste saznali više o označenim izjavama, posjetite Swift označene izjave.
Kako funkcionira označena izjava s continue?
Ovdje je oznaka identifikator. Kada se continue
naredba izvrši, program preskače ostatak koea unutar petlje i preskače na izraz gdje oznaka započinje.
Primjer 4: Označena izjava s continue
outerloop: for j in 1… 2 ( innerloop: for i in 1… 5 ( if i == 4 ( continue outerloop ) print("i = (i)") ) print("j = (j)") )
Kada pokrenete program, izlaz će biti:
i = 1 i = 2 i = 3 i = 1 i = 2 i = 3
U gornjem programu postoje dvije označene izjave outerloop: for j in 1… 2
i innerloop: for i in 1… 5
.
Imena oznaka externalloop i innerloop mogu se koristiti s continue
izjavom.
U programu smo koristili naredbu continue outerloop
da preskočimo izvršavanje naredbi unutar unutarnje i vanjske petlje. U procesu se vrijednosti i i j ažuriraju na sljedeći broj u rasponu.