Menu
Coddy logo textTech

Itération sur les Maps

Fait partie de la section Fondamentaux du Journey GO de Coddy — leçon 92 sur 109.

Le mot-clé range vous permet d'itérer sur toutes les paires clé-valeur d'une map. Il retourne à la fois la clé et la valeur pour chaque entrée.

Créez une map de l'inventaire des fruits :

inventory := map[string]int{
    "apples": 5,
    "bananas": 8,
    "oranges": 12,
}

for fruit, quantity := range inventory {
    fmt.Printf("%s: %d\n", fruit, quantity)
}

Le résultat affiche chaque paire clé-valeur :

apples: 5
bananas: 8
oranges: 12

Si vous n'avez besoin que des clés, vous pouvez omettre la deuxième variable :

for fruit := range inventory {
    fmt.Println(fruit)
}
challenge icon

Défi

Débutant

Dans ce défi, vous allez vous entraîner à itérer sur une map en utilisant le mot-clé range en Go. Une map des notes des étudiants a été créée pour vous. Votre tâche consiste à parcourir la map et à afficher le nom de chaque étudiant ainsi que sa note.

Complétez le code pour parcourir la map studentGrades et affichez le nom et la note de chaque étudiant au format : Student: [name], Grade: [grade]

Aide-mémoire

Utilisez range pour itérer sur les paires clé-valeur dans une map :

inventory := map[string]int{
    "apples": 5,
    "bananas": 8,
    "oranges": 12,
}

for fruit, quantity := range inventory {
    fmt.Printf("%s: %d\n", fruit, quantity)
}

Pour itérer uniquement sur les clés, omettez la seconde variable :

for fruit := range inventory {
    fmt.Println(fruit)
}

Essayez vous-même

package main

import (
	"fmt"
	"sort"
)

func main() {
	// Une carte des notes des étudiants
	studentGrades := map[string]string{
		"Alice":  "A",
		"Bob":    "B",
		"Charlie": "B+",
		"David":  "A-",
		"Eva":    "C",
	}

	// Collecter les noms des étudiants (clés) dans une tranche pour les trier
	var names []string
	for name := range studentGrades {
		names = append(names, name)
	}
	sort.Strings(names)


	// À FAIRE : Parcourir la liste triée des noms d'étudiants
	// et afficher le nom et la note de chaque étudiant au format :
	// "Étudiant : [nom], Note : [note]"
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux