Base de Conhecimento
Usando instruções Break e Continue ao trabalhar com loops no Go Imprimir este Artigo
Introdução
O uso de loops no Go permite automatizar e repetir tarefas de maneira eficiente.
Aprender a controlar a operação e o fluxo de loops permitirá lógica personalizada em seu programa. Você pode controlar seus loops com as instruções break
e continue
.
Declaração de quebra
No Go, a break
instrução finaliza a execução do loop atual. A break
quase sempre é emparelhado com uma declaração condicionalif
.
Vejamos um exemplo que usa a break
instrução em um for
loop:
package main
import "fmt"
func main() {
for i := 0; i < 10; i++ {
if i == 5 {
fmt.Println("Breaking out of loop")
break // break here
}
fmt.Println("The value of i is", i)
}
fmt.Println("Exiting program")
}
Este pequeno programa cria um for
loop que irá iterar enquanto i
for menor que 10
.
Dentro do for
loop, há uma if
declaração. A if
instrução testa a condição de i
para ver se o valor é menor que 5
. Se o valor de i
não for igual a 5
, o loop continuará e imprimirá o valor de i
. Se o valor de i
for igual a 5
, o loop executará a break
instrução, imprimirá o que é Breaking out of loop
e interromperá a execução do loop. No final do programa, imprimimos Exiting program
para indicar que saímos do loop.
Quando executamos esse código, nossa saída será a seguinte:
The value of i is 0
The value of i is 1
The value of i is 2
The value of i is 3
The value of i is 4
Breaking out of loop
Exiting program
Isso mostra que, uma vez que o número inteiro i
é avaliado como equivalente a 5, o loop é interrompido, conforme o programa é instruído a fazer isso com a break
instrução
Loops aninhados
É importante lembrar que a break
instrução interromperá a execução do loop mais interno em que é chamada. Se você tiver um conjunto aninhado de loops, precisará de uma pausa para cada loop, se desejar.
package main
import "fmt"
func main() {
for outer := 0; outer < 5; outer++ {
if outer == 3 {
fmt.Println("Breaking out of outer loop")
break // break here
}
fmt.Println("The value of outer is", outer)
for inner := 0; inner < 5; inner++ {
if inner == 2 {
fmt.Println("Breaking out of inner loop")
break // break here
}
fmt.Println("The value of inner is", inner)
}
}
fmt.Println("Exiting program")
}
Neste programa, temos dois loops. Enquanto os dois loops repetem 5 vezes, cada um tem uma if
declaração condicional com uma break
declaração. O loop externo será interrompido se o valor for outer
igual 3
. O loop interno será interrompido se o valor de inner
for 2
.
Se rodarmos o programa, podemos ver a saída:
The value of outer is 0
The value of inner is 0
The value of inner is 1
Breaking out of inner loop
The value of outer is 1
The value of inner is 0
The value of inner is 1
Breaking out of inner loop
The value of outer is 2
The value of inner is 0
The value of inner is 1
Breaking out of inner loop
Breaking out of outer loop
Exiting program
Observe que cada vez que o loop interno quebra, o loop externo não quebra. Isso ocorre porque break
apenas interromperá o loop mais interno do qual é chamado.
Vimos como o uso break
interromperá a execução de um loop. A seguir, vejamos como podemos continuar a iteração de um loop.
Declaração Continue
A continue
instrução é usada quando você deseja pular a parte restante do loop, retornar à parte superior do loop e continuar uma nova iteração.
Como na break
declaração, a continue
declaração é comumente usada com uma if
declaração condicional .
Usando o mesmo for
programa de loop que na seção Break Statement anterior , usaremos uma continue
declaração em vez de uma break
declaração:
package main
import "fmt"
func main() {
for i := 0; i < 10; i++ {
if i == 5 {
fmt.Println("Continuing loop")
continue // break here
}
fmt.Println("The value of i is", i)
}
fmt.Println("Exiting program")
}
A diferença em usar a continue
instrução em vez de uma break
instrução é que nosso código continuará apesar da interrupção quando a variável i
for avaliada como equivalente a 5
. Vejamos nossa saída:
The value of i is 0
The value of i is 1
The value of i is 2
The value of i is 3
The value of i is 4
Continuing loop
The value of i is 6
The value of i is 7
The value of i is 8
The value of i is 9
Exiting program
Aqui vemos que a linha The value of i is 5
nunca ocorre na saída, mas o loop continua depois desse ponto para imprimir linhas para os números 6 a 10 antes de sair do loop.
Você pode usar a continue
instrução para evitar código condicional profundamente aninhado ou para otimizar um loop, eliminando casos frequentes que você gostaria de rejeitar.
A continue
instrução faz com que um programa ignore certos fatores que surgem dentro de um loop, mas continua pelo restante do loop.
Conclusão
As instruções break
e continue
no Go permitem que você use for
loops com mais eficiência no seu código.
Esta resposta lhe foi útil?
Veja também
Introdução O Ruby on Rails é uma estrutura de aplicativo da web popular do lado do servidor, com...
Introdução Os sistemas de controle de versão de software, como o Git, permitem acompanhar o seu...
Introdução O Kubectl é uma ferramenta de linha de comando projetada para gerenciar objetos e...
Introdução Uma função é uma seção de código que, uma vez definida, pode ser reutilizada. As...
Introdução Paginação é o conceito de restringir o número de linhas retornadas em um conjunto de...