Vai al contenuto principale
Pubblicato il

break e continue in Go

Condividi:

Introduzione

Il linguaggio Go, come molti altri linguaggi di programmazione, offre una varietà di strumenti per controllare il flusso di esecuzione del codice. Tra questi, le parole chiave break e continue svolgono un ruolo fondamentale, specialmente quando si lavora con i cicli.

Comprendere break

break non è esclusivo di Go; ha le sue origini in linguaggi precedenti ed è ampiamente riconosciuto dagli sviluppatori in molti contesti. Il suo ruolo principale è:

  • Terminare immediatamente il ciclo più interno, che sia for, switch o select.

Vediamo un esempio pratico per illustrarne la funzionalità:

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

Nel codice sopra, il ciclo stamperà i numeri da 0 a 4. Quando i raggiunge il valore 5, l'esecuzione del ciclo viene interrotta.

La profondità di continue

continue, d'altra parte, adotta un approccio leggermente diverso:

  • Termina l'iterazione corrente e si sposta direttamente all'iterazione successiva del ciclo.

Esploriamo uno scenario in cui ciò può essere utile:

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

  fmt.Println(i)
}

Qui vogliamo stampare solo i numeri dispari. Quindi, quando incontriamo un numero pari (i%2 == 0), usiamo continue per saltare la stampa e passare all'iterazione successiva.

Uso combinato di break e continue

In alcune situazioni, potrebbe essere necessario usarli entrambi insieme. Immagina di voler scorrere una lista di numeri e interrompere il ciclo quando trovi un numero specifico, ma voler anche saltare certi numeri.

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

  if i == 15 {
    break
  }

  fmt.Println(i)
}

In questo esempio, continuiamo a saltare i numeri pari, ma terminiamo anche completamente il ciclo quando i è 15.

Conclusione

Padroneggiare l'uso di break e continue in Go può semplificare molte sfide legate al controllo del flusso all'interno dei cicli. Comprendendo a fondo come e quando usare queste parole chiave, puoi non solo rendere il tuo codice più leggibile, ma anche ottimizzare la logica di esecuzione del tuo programma.

Happy coding!