Ajout et mise à jour de paires clé-valeur
Fait partie de la section Fondamentaux du Journey GO de Coddy — leçon 87 sur 109.
Pour ajouter ou mettre à jour des valeurs dans une map, utilisez l'opérateur d'affectation avec la clé entre crochets.
Créez une map des scores des étudiants :
students := make(map[string]int)
// Ajouter de nouvelles paires clé-valeur
students["Emma"] = 92
students["Jack"] = 78
fmt.Println(students)Résultat :
map[Emma:92 Jack:78]Mettre à jour une valeur existante :
students["Jack"] = 85
fmt.Println(students)Résultat :
map[Emma:92 Jack:85]Défi
DébutantDans ce défi, vous allez vous entraîner à ajouter et à mettre à jour des valeurs dans une map. Nous avons une map qui stocke les fruits préférés de différentes personnes. Votre tâche consiste à ajouter le fruit préféré d'une nouvelle personne et à mettre à jour le fruit préféré d'une personne existante.
Aide-mémoire
Pour ajouter ou mettre à jour des valeurs dans une map, utilisez l'opérateur d'affectation avec la clé entre crochets :
students := make(map[string]int)
// Ajouter de nouvelles paires clé-valeur
students["Emma"] = 92
students["Jack"] = 78
// Mettre à jour une valeur existante
students["Jack"] = 85Essayez vous-même
package main
import (
"fmt"
"sort"
)
func main() {
// Map des personnes et de leurs fruits préférés
favoriteFruits := map[string]string{
"Alice": "Apple",
"Bob": "Banana",
"Carol": "Cherry",
}
// TODO: Ajouter une nouvelle entrée pour "David" avec le fruit préféré "Dragon Fruit"
// TODO: Mettre à jour le fruit préféré de Bob en "Blueberry"
// Collecter les noms (clés) dans un slice pour les trier
var names []string
for person := range favoriteFruits {
names = append(names, person)
}
sort.Strings(names)
// Afficher la map mise à jour dans l'ordre trié
fmt.Println("Updated favorite fruits:")
for _, person := range names {
fruit := favoriteFruits[person]
fmt.Printf("%s loves %s\n", person, fruit)
}
}
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
4Opérateurs de comparaison et logiques
Opérateurs de comparaison - Partie 1Opérateurs de comparaison - Partie 2Opérateur logique ANDOpérateur logique OROpérateur logique NOTBases de la priorité des opérateursRécapitulatif - Effectuer des comparaisons7Structures de contrôle : Les boucles
Explication de la boucle `for`Boucle For - Les basesBoucle For - Condition uniquementLe mot-clé `break`Le mot-clé `continue`Boucles imbriquéesRécapitulatif - Répéter des actions2Variables et types de données de base
Qu'est-ce qu'une variableInférence de type avec `:=` Entiers (int)Nombres à virgule flottanteBooléensChaînes de caractères (Strings)Valeurs zéroConstantesConventions de nommageRécapitulatif - Variables et types5Entrées/Sorties de base
Sortie formatéeVerbes de formatageAffichage des typesSaisie utilisateur de baseRécapitulatif - Entrées et Sorties8Fonctions
Comprendre les fonctionsDéclarer une fonctionAppeler des fonctionsParamètres de fonctionRetourner une valeur uniqueRetourner plusieurs valeursValeurs de retour nomméesBases de la portée des fonctionsRécapitulatif - Créer du code réutilisable11Types composites : Slices
Introduction aux SlicesDéclaration de littéraux de SlicesCréation de Slices avec `make`Longueur vs Capacité des SlicesAccès aux éléments d'un SliceAjout d'élémentsDécoupage de Slices/Tableaux existantsItération sur les SlicesCopie de SlicesRécapitulatif - Listes dynamiques3Opérateurs de base
Opérateurs arithmétiquesOpérateur de divisionL'opérateur moduloOpérateur d'affectationOpérateurs d'affectation augmentéeIncrémentation et décrémentationRécapitulatif - Calculs6Structure de contrôle : Les conditionnelles
L'instruction `if`Le mot-clé `else`Le mot-clé `else if`Masquage de variable dans `if`Initialisation des variablesL'instruction `switch``switch` avec expressions`switch` sans expressionLe mot-clé `fallthrough`Récapitulatif - Prendre des décisions9Pointeurs
Qu'est-ce qu'un pointeur ?Déclaration de variables pointeursL'opérateur d'adresseDéréférencement de pointeursUtiliser des pointeurs dans les fonctionsPointeurs NilRécapitulatif - Comprendre les pointeurs12Types composites : Maps
Introduction aux MapsDéclaration de littéraux de MapCréation de Maps avec `make`Ajout et mise à jour de paires clé-valeurAccès aux valeurs d'une MapVérification de l'existence d'une cléSuppression d'entrées de MapTaille d'une MapItération sur les MapsRécapitulatif - Stockage clé-valeur