Les boucles dans le langage Go
Qu'est-ce qu'une boucle en Go ?
Les boucles sont des structures de contrôle essentielles en programmation qui permettent de répéter un bloc de code plusieurs fois.
En Go, les boucles facilitent l’exécution répétée de tâches jusqu’à ce qu’une condition spécifique soit remplie.
Imaginez que vous deviez plier 10 serviettes. Plier une serviette à la fois serait très long. Une boucle vous permettra de plier toutes les serviettes automatiquement, une par une, sans avoir à écrire le même code pour chaque serviette.

La boucle for
en Go
En Go, la boucle principale utilisée pour les itérations est la boucle for
. Elle est très flexible et peut être utilisée de plusieurs manières différentes.
Voici la syntaxe de base d’une boucle for en Go :
package main
import "fmt"
func main() {
for i := 0; i < 5; i++ {
fmt.Println("Itération :", i)
}
}
Dans l'exemple ci-dessous, la boucle for commence avec la variable i
égal à 0. Elle continue de s’exécuter tant que i
est inférieur à 5, et à chaque itération, elle incrémente i
de 1. Le programme affichera :
Itération : 0
Itération : 1
Itération : 2
Itération : 3
Itération : 4
La boucle for
avec des conditions uniques
La boucle for
en Golang peut également être utilisée sans les trois parties habituelles (initialisation, condition, incrément). Cela est particulièrement utile pour créer des boucles infinies ou des boucles basées sur des conditions spécifiques.
Voici un exemple de boucle infinie avec une condition d’arrêt interne grâce au mot-clé break
:
package main
import "fmt"
func main() {
i := 0
for {
if i >= 5 {
break // Sort de la boucle lorsque i atteint 5
}
fmt.Println("Itération infinie :", i)
i++
}
}
👆 Dans ce code, la boucle for
n’a pas de condition. Elle continue de s’exécuter indéfiniment jusqu’à ce que la condition interne if i >= 5
soit vraie, déclenchant l’instruction break
qui sort de la boucle.
Si on exécute le code, le résultat suivant apparaîtra :
Itération infinie : 0
Itération infinie : 1
Itération infinie : 2
Itération infinie : 3
Itération infinie : 4
Boucle for avec des ranges
Une autre façon puissante d’utiliser la boucle for
en Go est avec le mot-clé range
. Cela permet d’itérer facilement sur des collections telles que des tableaux, des slices, des maps, et même des chaînes de caractères.
Voici un exemple d’utilisation de range sur une slice :
package main
import "fmt"
func main() {
fruits := []string{"pomme", "banane", "cerise"}
for index, fruit := range fruits {
fmt.Printf("Index %d : %s\n", index, fruit)
}
}
Dans cet exemple, la boucle for utilise range pour parcourir chaque élément de la slice fruits. À chaque itération, index reçoit la position de l’élément et fruit reçoit la valeur de l’élément. Le programme affichera :
Index 0 : pomme
Index 1 : banane
Index 2 : cerise
Si vous n’avez pas besoin de l’index, vous pouvez utiliser _ pour l’ignorer :
for _, fruit := range fruits {
fmt.Println(fruit)
}
Cela affichera simplement :
pomme
banane
cerise