В этой статье вы научитесь использовать оператор break для передачи управления программой.
Когда вы работаете с циклами или условными операторами, вам может потребоваться пропустить некоторые операторы внутри цикла или немедленно завершить цикл без проверки тестового выражения.
В таких случаях используются операторы break и continue. Вы узнаете о выражении continue в следующей главе.
Оператор break останавливает выполнение цикла или оператора switch. Затем он переходит к следующему оператору, следующему за оператором цикла или переключателя.
Синтаксис оператора break:
перерыв
Как работает оператор break?
Пример 1: Оператор Swift break в цикле 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
. Когда выражение оценивается как истинное (на 4-й итерации), выполняется break
оператор, и цикл for-in завершается.
Затем он выходит за пределы цикла и печатает конец .
Пример 2: Оператор Swift break в цикле 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. Затем программа вспыхивает из (Завершает) в то время как петли и выполняет операторы после цикла, то есть 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
only завершает выполнение внутреннего цикла for i in 1… 5
. Однако он продолжает выполнение внешнего цикла for j in 1… 2
.
Но что, если вы также хотите break
использовать внешний цикл for j in 1… 2
. Для этого мы используем помеченные операторы в Swift.
Помеченное заявление с разрывом
Операторы, которые имеют префиксы в форме (метка: Заявление), называются помеченными операторами. Метка - это идентификатор, на который вы можете ссылаться позже в операторах break или continue. Чтобы узнать больше о помеченных заявлениях, посетите помеченное заявление 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)") )
Когда вы запустите программу, вывод будет:
я = 1 я = 2 я = 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 завершает свое выполнение, как только завершается первый подходящий вариант switch. Следовательно, в Swift необязательно добавлять перерыв в корпусе переключателя. Чтобы узнать больше, посетите инструкцию Swift switch.