Изявление за бързо прекъсване (с примери)

В тази статия ще се научите да използвате инструкция за прекъсване, за да прехвърлите контрола върху програмата.

Когато работите с цикли или условни изрази, може да се наложи да пропуснете някои изрази вътре в цикъла или да прекратите цикъла незабавно, без да проверявате тестовия израз

В такива случаи се използват оператори break и continue. Ще научите за продължаването на изявлението в следващата глава.

Операторът break спира изпълнението на цикъл или оператор за превключване. След това преминава към следващия оператор, следвайки оператора за цикъл или превключване.

Синтаксисът на оператора break е:

 почивка

Как работи изявлението break?

Пример 1: Оператор за бързо прекъсване в цикъл for

 for i in 1… 5 ( if i == 4 ( break ) print("i = (i)") ) print("The end") 

Когато стартирате програмата, изходът ще бъде:

 i = 1 i = 2 i = 3 Краят 

В горната програма последователността, която се итерира, е в диапазон от 1 до 5.

Стойността на i се задава на първото число в диапазона (1) и се актуализира до следващия номер на диапазона на всяка итерация.

Цикълът съдържа и оператор if с израз i == 4. Изразът, когато се изчислява на true (на 4-та итерация) изпълнява breakизраза и цикълът for-in се прекратява.

След това скача извън цикъла, за да отпечата края .

Пример 2: Оператор за бързо прекъсване в цикъл while

 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") 

Когато стартирате програмата, изходът ще бъде:

следващо ниво следващо ниво Игра завършена. Няма останало ниво извън цикъл while

В горната програма тестовият израз на цикъл while е винаги true.

Когато currentLevel е по-голям от finalLevel, breakизразът вътре в блока if се изпълнява. След това програмата излиза от (прекратява) цикъла while и изпълнява операторите след цикъла, т.е. print("outside of while loop")

Пример 3: Оператор за бързо прекъсване с вложени цикли

 for j in 1… 2 ( for i in 1… 5 ( if i == 4 ( break ) print("i = (i)") ) print("j = (j)") ) 

Когато стартирате програмата, изходът ще бъде:

 i = 1 i = 2 i = 3 j = 1 i = 1 i = 2 i = 3 j = 2 

В горната програма breakоператор вътре в if i == 4единственото прекратява изпълнението на вътрешния цикъл for i in 1… 5. Той обаче продължава изпълнението на външния цикъл for j in 1… 2.

Но какво, ако искате и към breakвъншната верига for j in 1… 2. За това използваме обозначени изявления в Swift.

Етикетирано изявление с прекъсване

Изявления, които имат префикси във формата (етикет: Изявление), се наричат ​​като обозначени изявления. Етикетът е идентификатор, към който можете да се обърнете по-късно в инструкциите за прекъсване или продължаване. За да научите повече за етикетирани изявления, посетете Swift етикетирани изявления.

Как работи етикетираното изявление с почивка?

Тук етикетът е идентификатор. Когато breakоператорът се изпълнява, той прекратява контурите вътре в етикета и програмата преминава към оператора непосредствено след етикетирания оператор.

Пример 4: Обозначено изявление с прекъсване

 outerloop: for j in 1… 2( innerloop: for i in 1… 5 ( if i == 4 ( break outerloop ) print("i = (i)") ) print("j = (j)") ) 

Когато стартирате програмата, изходът ще бъде:

 i = 1 i = 2 i = 3 

В горната програма има две обозначени изявления outerloop: for j in 1… 2и innerloop: for i in 1… 5.

Имената на етикетите externalloop и innerloop могат да се използват с breakизявлението.

Операторът break outerloopпрекратява и цикъла, и завършва програмата.

Ако сте запознати с друг език за програмиране като C, C ++, Java и т.н., breakизразът се използва за прекратяване на оператор за превключване. Но в Wwift операторът switch завършва изпълнението си веднага щом завърши първият съвпадащ случай на превключване. Следователно не е задължително да добавяте прекъсване в корпуса на превключвателя в Swift. За да научите повече, посетете изявлението Swift switch.

Интересни статии...