English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Sentença continue Swift

Neste artigo, você aprenderá a usar a sentença continue 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 interromper o loop imediatamente, sem verificar a expressão de teste.

Neste caso, serão usadas as sentenças break e continue. Acesse esta página para saber mais sobreSentença breakMais informações.

A sentença continue interrompe a execução do loop ou das instruções dentro do switch e, em seguida, pula de volta para avaliar novamente a expressão de teste do loop.

A sintaxe da sentença continue é:

continue

Como funciona a sentença continue?

Exemplo1:a sentença continue no loop for do Swift

for i in 1...5 {
    if i == 4 {
        continue
    }
    print("i = \(i)")
}

Quando o programa é executado, a saída é:

i = 1
i = 2
i = 3
i = 5

No programa acima, o intervalo da sequência que será iterada é1até5.

O valor de i é configurado para range(1) do primeiro número, e é atualizado para o próximo número da faixa em cada iteração.

O loop também contém a expressão i = = 4da instrução if. Quando o valor da expressão for true (no4na próxima iteração) executar a instrução continue, pular a execução da instrução print("i = \(i)") e passar para a próxima iteração (i = 5)。

Exemplo2Declaração de continue no loop while do Swift

var intialLevel:Int = -5, finalLevel:Int = 2
var currentLevel:Int = intialLevel
while currentLevel < finalLevel {
    if intialLevel < 0 {
        print("O nível inicial deve ser um número positivo")
        intialLevel = 0
        currentLevel = intialLevel
        continue //Pula a execução atual
    }
    currentLevel += 1
    print("próximo nível")
}
print("Fora do loop while")

Quando o programa é executado, a saída é:

O nível inicial deve ser um número positivo
próximo nível
próximo nível
Fora do loop while

No programa acima, o loop while roda até que currentLevel seja menor que finalLevel. Devido ao valor atribuído a intialLevel-5E menor que 0, portanto, executa a instrução interna if.

Quando o programa atingir a instrução continue, ele pula as instruções do loop while e depois volta para verificar novamente a condição currentLevel<finalLevel.

Exemplo3Declaração de continue no Swift com loops aninhados

for j in 1...2 {
    for i in 1...5 {
        if i == 4 {
            continue
        }
        print("i = \(i)")
    }
    print("j = \(j)")
}

Quando o programa é executado, a saída é:

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

No programa acima, se i==4A instrução continue dentro do loop só pula a execução da instrução print("i=\(i)") dentro do loop for. No entanto, ela não pula o for i in 1...5 Execução do loop externo.

Mas e se você também quiser continuar o loop externo? Para isso, você precisa usar instruções com etiqueta no Swift.

Declaração com etiqueta de continue

As instruções com prefixo no formato (label: Statement) são chamadas de instruções com etiqueta. A etiqueta é um identificador que você pode referenciar mais tarde em instruções break ou continue.

Como funciona uma declaração de etiqueta com continue?

Aqui, label é um identificador. Quando a instrução continue é executada, o programa pula o resto do loop coe e salta para a instrução começando com label.

Exemplo4:Sentenças com rótulo continue

outerloop: for j in 1...2 {
    innerloop: for i in 1...5 {
        if i == 4 {
            continue outerloop
        }
        print("i = \(i)")
    }
    print("j = \(j)")
}

Quando o programa é executado, a saída é:

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

No programa acima, há duas sentenças marcadas 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 continue.

No programa, usamos a sentença continue outerloop para pular a execução de sentenças dentro de loops internos e externos. Durante esse processo, os valores de i e j serão atualizados para o próximo número no intervalo.