O loop for é uma instrução de fluxo de controle usada para executar repetidamente um bloco de código. Em Go, o loop for é a única construção de loop.

Você pode usar o loop for para repetir blocos de código e simular uma gama completa de loops de outras linguagens, incluindo loops for...each, while e do...while.

Instalar Ir para começar

Assegure-se de ter Vá instalado para acompanhar. A maioria desses exemplos requer o fmt pacote, e você deve usar uma estrutura geral como esta:

pacote a Principal

importar "fm"

funçãoa Principal() {
// código vai aqui
}

Um Três Componentes para Loop in Go

Este é talvez o loop for mais comum. Como o nome sugere, são necessários três componentes: o valor inicial, uma condição e uma instrução post. Aqui está a sintaxe:

para inicialização; doença; publicar {
declarações)
}

Nesse loop, após a inicialização, a condição é avaliada. Se true, as instruções no bloco de loop for são executadas, seguidas pela instrução post. O programa repete esse processo até que a condição não seja mais avaliada como verdadeira. Abaixo está um exemplo.

instagram viewer
para i := 1; eu <= 5; i++ {
fmt.Imprimir(eu)
}

Aqui:

  • os conjuntos de inicialização eu para 1
  • a condição é eu <= 5
  • a declaração do post é i++

Este loop for imprime o valor atual de eu se for menor ou igual a 5. A 'declaração post' adiciona 1 a eu após cada loop e uma vez eu chega a 5, o loop termina. Sem a ‘instrução post’, o loop seria executado infinitas vezes e potencialmente faria o programa travar.

Um loop For-Each em Go

Go não tem um loop for-each, mas você pode modificar um loop for para percorrer uma coleção de elementos. Aqui está a sintaxe:

para índice, valor := coleção de intervalo {
// corpo
}

A coleção pode ser um array, slice, string ou map, ou valores recebidos em um canal. O índice é a posição na coleção. O valor é o elemento no índice.

Se você se importa apenas com o valor, omita o índice assim:

para _, valor := intervalo de fatia {}

No exemplo abaixo, o loop percorre o array e imprime o índice e o valor de cada item nele.

matriz := []string{"olá", "mundo"}

por i, j := intervalo variedade {
fmt.Imprimir(eu, j)
}

Um loop while em Go

Você pode usar o loop for para obter funcionalidade de loop while. Em um loop while, uma instrução é executada enquanto uma condição permanecer verdadeira. Considere o seguinte:

eu := 1

para mim <= 5 {
eu *= 2
}

fmt.Imprimir(eu)

Neste código, enquanto eu é menor ou igual a 5, é multiplicado por 2 cada vez que o loop é executado.

Um loop Do…While em Go

O loop do...while é diferente do loop while, pois o corpo do loop será executado pelo menos uma vez. Existem duas abordagens para implementar isso em Go.

  1. Certifique-se de que a condição para a primeira iteração seja definida como verdadeira.
    eu := 10

    por próximo := verdadeiro; próximo; próximo = eu <= 5 {
    fmt.Imprimir(eu)
    i++
    }

    //Irá imprimir 10

    Como a condição inicial é verdadeira, eu é impresso e então incrementado na primeira iteração. Uma vez que a condição (eu <=5) for avaliado como false durante a segunda iteração, o loop será encerrado.
  2. Execute o corpo do loop uma vez antes de verificar a condição.
    eu := 10

    por {
    fmt.Imprimir(eu)
    i++

    se eu >= 5 {
    parar;
    }
    }

    //Irá imprimir 10

    No loop for acima, 10, que é o valor de i, é impresso primeiro e, em seguida, a instrução if é executada. Se a condição for verdadeira, o loop é interrompido, caso contrário, o loop continua.

Outras Declarações de Fluxo de Controle

Os loops na programação são importantes porque simplificam tarefas repetitivas e economizam tempo. Em vez de escrever uma linha de código dez vezes, você pode simplesmente criar um loop que é executado dez vezes. Outras instruções de fluxo de controle são as instruções if, if...else, if...else if...if e switch.

O que há de novo em Go Versão 1.18

Leia a seguir

CompartilharTweetCompartilharE-mail

Tópicos relacionados

  • Programação
  • Programação

Sobre o autor

Maria Gathoni (22 artigos publicados)

Mary Gathoni é uma desenvolvedora de software apaixonada por criar conteúdo técnico que não seja apenas informativo, mas também envolvente. Quando ela não está codificando ou escrevendo, ela gosta de sair com os amigos e estar ao ar livre.

Mais de Mary Gathoni

Assine a nossa newsletter

Junte-se à nossa newsletter para dicas de tecnologia, análises, e-books gratuitos e ofertas exclusivas!

Clique aqui para assinar