У цій статті ви навчитеся використовувати оператор break для передачі управління програмою.
Коли ви працюєте з циклами чи умовними операторами, вам може знадобитися пропустити деякі оператори всередині циклу або негайно завершити цикл, не перевіряючи тестовий вираз
У таких випадках використовуються оператори break і continue. Про продовження твердження ви дізнаєтесь у наступному розділі.
Оператор break зупиняє виконання циклу або оператора switch. Потім він переходить до наступного оператора, що слідує за оператором циклу або перемикача.
Синтаксис оператора 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: оператор Swift break з вкладеними циклами
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.
Позначена заява з перервою
Виписки, що мають префікси у формі (мітка: Statement), називаються міченими твердженнями. Мітка - це ідентифікатор, на який ви можете посилатись пізніше в операторах перерви або продовження. Щоб дізнатись більше про марковані висловлювання, відвідайте 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
оператор використовується для завершення оператора switch. Але в Wwift оператор switch закінчує своє виконання, як тільки завершується перший відповідний випадок комутатора. Тому необов’язково додавати розрив на корпусі перемикача в Swift. Щоб дізнатися більше, відвідайте заяву Swift switch.