Šajā rakstā jūs iemācīsities izmantot pārtraukuma paziņojumu, lai pārsūtītu programmas vadību.
Kad strādājat ar cilpām vai nosacījumiem, jums var būt nepieciešams izlaist dažus priekšrakstus cilpā vai nekavējoties pārtraukt cilpu, nepārbaudot testa izteiksmi
Šādos gadījumos tiek izmantoti pārtraukuma un turpināšanas paziņojumi. Par turpināšanas paziņojumu uzzināsiet nākamajā nodaļā.
Pārtraukuma paziņojums pārtrauc cikla vai slēdža paziņojuma izpildi. Pēc tam tas pāriet uz nākamo paziņojumu pēc cikla vai slēdža paziņojuma.
Pārtraukuma paziņojuma sintakse ir šāda:
pārtraukums
Kā darbojas pārtraukuma paziņojums?
1. piemērs: ātrs pārtraukuma paziņojums cilnei
for i in 1… 5 ( if i == 4 ( break ) print("i = (i)") ) print("The end")
Palaidot programmu, izeja būs:
i = 1 i = 2 i = 3 Beigas
Iepriekš minētajā programmā atkārtotā secība ir diapazonā no 1 līdz 5.
I vērtība tiek iestatīta uz pirmo skaitli diapazonā (1) un tiek atjaunināta līdz nākamajam diapazona skaitlim katrā atkārtojumā.
Cilpā ir arī if paziņojums ar izteiksmi i == 4
. Izteiksme, ja tā tiek vērtēta kā taisnība (4. atkārtojumā), izpilda break
paziņojumu, un for-in cilpa beidzas.
Pēc tam tas izlec ārpus cilpas, lai drukātu beigas .
2. piemērs: ātrs pārtraukuma paziņojums, kamēr cikls
var currentLevel:Int = 1, finalLevel:Int = 2 var isLifeAvailable = true while (isLifeAvailable) ( if currentLevel> finalLevel ( print("Game Completed. No level remaining") break ) //play game and go to next level currentLevel += 1 print("next level") ) print("outside of while loop")
Palaidot programmu, izeja būs:
nākamā līmeņa nākamā līmeņa spēle pabeigta. Neviens līmenis nav atlicis ārpus cilpa
Iepriekš minētajā programmā while ciklu testa izteiksme vienmēr ir true
.
Ja currentLevel ir lielāks par finalLevel, break
paziņojums if bloka iekšpusē tiek izpildīts. Pēc tam programma izslēdzas (pārtrauc) while ciklu un izpilda paziņojumus pēc cikla, ti, print("outside of while loop")
…
3. piemērs: ātrs pārrāvuma paziņojums ar ligzdotām cilpām
for j in 1… 2 ( for i in 1… 5 ( if i == 4 ( break ) print("i = (i)") ) print("j = (j)") )
Palaidot programmu, izeja būs:
i = 1 i = 2 i = 3 j = 1 i = 1 i = 2 i = 3 j = 2
Iepriekš minētajā programmā vienīgais break
paziņojums if i == 4
pārtrauc iekšējās cilpas izpildi for i in 1… 5
. Tomēr tas turpina ārējās cilpas izpildi for j in 1… 2
.
Bet ko darīt, ja vēlaties break
arī ārējo slāni for j in 1… 2
. Šim nolūkam mēs Swift izmantojam apzīmējumus.
Apzīmēts paziņojums ar pārtraukumu
Izraksti, kuru formā ir prefiksi (label: Statement), tiek saukti par iezīmētiem paziņojumiem. Etiķete ir identifikators, uz kuru varat atsaukties vēlāk pārtraukuma vai turpinājuma paziņojumos. Lai uzzinātu vairāk par marķētiem paziņojumiem, apmeklējiet Swift apzīmējumu.
Kā darbojas apzīmējums ar pārtraukumu?
Šeit etiķete ir identifikators. Izpildot break
paziņojumu, tas pārtrauc cilpas etiķetes iekšpusē, un programma pāriet uz paziņojumu tūlīt pēc iezīmētā paziņojuma.
4. piemērs: Apzīmēts paziņojums ar pārtraukumu
outerloop: for j in 1… 2( innerloop: for i in 1… 5 ( if i == 4 ( break outerloop ) print("i = (i)") ) print("j = (j)") )
Palaidot programmu, izeja būs:
i = 1 i = 2 i = 3
Iepriekš minētajā programmā ir divi apzīmēti paziņojumi outerloop: for j in 1… 2
un innerloop: for i in 1… 5
.
Ar paziņojumu var izmantot etiķetes nosaukumus ārējais un iekšējais break
.
Izraksts break outerloop
pārtrauc abas cilpas un beidz programmu.
Ja esat pazīstams ar citām programmēšanas valodām, piemēram, C, C ++, Java utt., break
Pārskats tiek izmantots, lai pārtrauktu komutatora paziņojumu. Bet programmā Wwift slēdža pārskats izpildi pabeidz, tiklīdz ir pabeigta pirmā atbilstošā slēdža lieta. Tāpēc Swift slēdža gadījumā ir obligāti jāpievieno pārtraukums. Lai uzzinātu vairāk, apmeklējiet paziņojumu Swift switch.