English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Neste artigo, você aprenderá a usar a instrução break para transferir o controle do programa.
Ao usar loops ou instruções condicionais, pode ser necessário pular algumas instruções dentro do loop ou encerrar o loop imediatamente, sem verificar a expressão de teste
Neste caso, será usado o break e o continue. Você aprenderá isso no próximo capítulo instrução continue.
O break interrompe a execução do loop ou da instrução switch. Em seguida, ele pula para a próxima instrução após o loop ou switch.
A sintaxe do break é:
break
for i in 1...5 { if i == 4 { break } print("i = \(i)") } print("O fim")
Quando você executar este programa, a saída será:
i = 1 i = 2 i = 3 The end
No programa acima, a sequência de iterar é1até5.
o valor de i é configurado para o range(1) o primeiro número, e é atualizado para o próximo número da faixa em cada iteração.
O loop também contém uma instrução if, a expressão é i==4. A expressão é calculada como true (no4ao executar a instrução break, for-a iteração termina. (Na
Em seguida, ele pula para fora do loop para imprimir The End.
var currentLevel: Int = 1, finalLevel: Int = 2 var isLifeAvailable = true while (isLifeAvailable) { if currentLevel > finalLevel { print("O jogo terminou, não há mais níveis") break } //Jogue o jogo, vá para o próximo nível currentLevel += 1 print("Próximo nível") } print("Fora do loop while")
Quando você executar este programa, a saída será:
Próximo nível Próximo nível O jogo terminou, não há mais níveis Fora do loop while
No programa acima, a expressão de teste do loop while é sempre true.
Quando currentLevel for maior que finalLevel, a instrução break dentro do bloco if será executada. Em seguida, o programa sai (termina) do loop while e executa a instrução após o loop, ou seja, print("Fora do loop while")..
for j in 1...2 { for i in 1...5 { if i == 4 { break } print("i = \(i)") } print("j = \(j)") }
Quando você executar este programa, a saída será:
i = 1 i = 2 i = 3 j == 1 i = 1 i = 2 i = 3 j == 2
No programa acima, se i == 4 a instrução break interna apenas termina o for i in 1...5 a execução do loop interno. No entanto, ele continua a executar o loop externo for j in 1...2 .
但是,se você também quiser break no loop externo for j in 1...2那么,我们在Swift中使用带标签的语句。
Instruções com prefixo no formato (label: Statement) são chamadas de instruções etiquetadas. A etiqueta é um identificador que você pode referenciar em instruções break ou continue mais tarde.
Aqui, label é um identificador. Quando a instrução break é executada, ela termina o loop interno label e o programa pula imediatamente para a instrução após a etiqueta.
outerloop: for j in 1...2{ innerloop: for i in 1...5 { if i == 4 { break outerloop } print("i = \(i)") } print("j = \(j)") }
Quando você executar este programa, a saída será:
i = 1 i = 2 i = 3
Neste programa, há duas sentenças rotuladas outerloop: for j in 1...2 e innerloop: for i in 1...5.
Os nomes de rótulo outerloop e innerloop podem ser usados com a sentença break.
A sentença break outerloop termina dois loops e encerra o programa.
Se você estiver familiarizado com outras linguagens de programação, como C, C ++,Java etc., use a sentença break para encerrar a sentença switch. Mas no Swift, a sentença switch termina imediatamente após a conclusão do primeiro caso correspondente. Portanto, adicionar break nos casos do switch Swift é opcional. Para obter mais informações, acesseSentença switch Swift.