Pular para o conteúdo principal
Publicado em

Loop for em Go

Compartilhar:

Introdução

O loop for é uma das estruturas de controle mais fundamentais em qualquer linguagem de programação. Em Go, oferece flexibilidade e poder que se adaptam a uma variedade de situações.

Componentes Básicos do Loop for

O loop for em Go pode ser visto em três variações principais:

  1. Baseado em Contador: Como em muitas outras linguagens, é possível definir uma inicialização, condição e pós-processamento.
  2. Baseado em Condição: Aqui, apenas uma condição é especificada. Semelhante a um while em outras linguagens.
  3. Range: Essa variação permite iterar sobre slices, arrays e outros tipos de dados iteráveis.

Exemplos

// Baseado em Contador
for i := 0; i < 10; i++ {
  fmt.Println(i)
}

// Baseado em Condição
j := 0

for j < 10 {
  fmt.Println(j)
  j++
}

// Range
frutas := []string{"Maçã", "Banana", "Cereja"}

for indice, fruta := range frutas {
  fmt.Printf("frutas[%d]: %s\n", indice, fruta)
}

Cuidado com Loops Infinitos

Como mencionado, é vital estar ciente da possibilidade de criar loops infinitos. Sempre verifique as condições do seu loop e certifique-se de que existe uma saída.

// Um exemplo de um loop infinito. Não execute este código!

/*
for {
  fmt.Println("Este é um loop infinito!")
}
*/

Variações Avançadas

É possível combinar as variações do loop for de forma criativa para atender a diferentes necessidades. Por exemplo, pode-se usar uma variação baseada em condição para percorrer slices, com base na lógica de negócio específica.

frutas := []string{"Maçã", "Banana", "Cereja"}
indice := 0

for indice < len(frutas) {
  fmt.Println(frutas[indice])
  indice += 2 // Pular a cada duas frutas
}

Conclusão

O loop for é uma ferramenta versátil e essencial no arsenal de qualquer programador Go. Esteja você realizando tarefas simples ou implementando algoritmos complexos, a capacidade de controlar o fluxo de execução é inestimável.

Happy coding!