Est-ce que break en Go interrompt seulement switch/select ou aussi la boucle externe ?
Bonjour à tous ! J'ai commencé à apprendre Go récemment et j'ai rencontré un comportement inattendu de l'instruction `break`. J'ai une boucle `for` qui contient un `switch`. Je m'attendais à ce que `break` à l'intérieur de `case` interrompe la boucle, mais cela ne s'est pas produit.
Voici un exemple simplifié de mon code :
```go
package main
import "fmt"
func main() {
for i := 0; i < 5; i++ {
switch i {
case 2:
fmt.Println("Trouvé 2, on sort de la boucle !")
break // Je pensais que cela interromprait le for
default:
fmt.Printf("Itération %d\n", i)
}
}
fmt.Println("Boucle terminée")
}
```
Je m'attendais à ce qu'après l'affichage de "Trouvé 2, on sort de la boucle !", le programme termine la boucle et imprime "Boucle terminée". Cependant, en pratique, le programme continue les itérations : 0, 1, "Trouvé