Saltar al contenido principal
Publicado el

break y continue en Go

Compartir:

Introducción

El lenguaje Go, al igual que muchos otros lenguajes de programación, ofrece una variedad de herramientas para controlar el flujo de ejecución del código. Entre ellas, las palabras clave break y continue desempeñan un papel fundamental, especialmente cuando trabajamos con bucles.

Comprendiendo break

break no es exclusivo de Go; tiene su origen en lenguajes anteriores y es ampliamente reconocido por los desarrolladores en muchos contextos. Su papel principal es:

  • Terminar inmediatamente el bucle más interno, ya sea for, switch o select.

Veamos un ejemplo práctico para ilustrar su funcionalidad:

for i := 0; i < 10; i++ {
    if i == 5 {
        break
    }
    fmt.Println(i)
}

En el código anterior, el bucle imprimirá los números del 0 al 4. Cuando i alcanza el valor 5, la ejecución del bucle se interrumpe.

La profundidad de continue

continue, por otro lado, adopta un enfoque ligeramente diferente:

  • Termina la iteración actual y se mueve directamente a la siguiente iteración del bucle.

Exploremos un escenario donde esto puede ser útil:

for i := 0; i < 10; i++ {
  if i%2 == 0 {
    continue
  }

  fmt.Println(i)
}

Aquí, queremos imprimir solo números impares. Así, cuando encontramos un número par (i%2 == 0), usamos continue para omitir la impresión y continuar con la siguiente iteración.

Uso conjunto de break y continue

En algunas situaciones, puede ser necesario usar ambos juntos. Imagina que quieres recorrer una lista de números e interrumpir el bucle al encontrar un número específico, pero también deseas omitir ciertos números.

for i := 0; i < 20; i++ {
  if i%2 == 0 {
    continue
  }

  if i == 15 {
    break
  }

  fmt.Println(i)
}

En este ejemplo, seguimos omitiendo los números pares, pero también terminamos completamente el bucle cuando i es 15.

Conclusión

Dominar el uso de break y continue en Go puede simplificar muchos desafíos relacionados con el control de flujo dentro de los bucles. Al comprender en profundidad cómo y cuándo usar estas palabras clave, puedes no solo hacer tu código más legible, sino también optimizar la lógica de ejecución de tu programa.

Happy coding!