Créer une Hash Map
Fait partie de la section Logic & Flow du Journey Rust de Coddy — leçon 28 sur 66.
Maintenant que vous comprenez ce que sont les tables de hachage, apprenons à en créer une. Pour utiliser des tables de hachage en Rust, vous devez d'abord importer le type HashMap dans la portée avec une instruction use au début de votre fichier :
use std::collections::HashMap;Une fois que vous avez importé HashMap, vous pouvez créer une nouvelle table de hachage vide en utilisant la fonction HashMap::new() :
let mut scores = HashMap::new();Notez que nous déclarons la table de hachage comme mut car nous voudrons probablement y ajouter des données plus tard. Lorsque vous créez une table de hachage vide de cette manière, Rust ne sait pas quels seront les types des clés et des valeurs jusqu'à ce que vous commenciez à insérer des données.
Vous pouvez également spécifier les types explicitement si vous le préférez :
let mut scores: HashMap<String, i32> = HashMap::new();Cela crée une hash map qui stockera des clés String (comme des noms d'étudiants) et des valeurs i32 (comme des scores de test). La hash map vide est maintenant prête à stocker vos paires clé-valeur.
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Aide-mémoire
Pour utiliser les hash maps en Rust, importez HashMap depuis la bibliothèque standard :
use std::collections::HashMap;Créez une hash map vide avec un typage implicite :
let mut scores = HashMap::new();Créez une hash map vide avec une annotation de type explicite :
let mut scores: HashMap<String, i32> = HashMap::new();Les hash maps doivent être déclarées comme mut si vous prévoyez de les modifier. Lors de l'utilisation du typage implicite, Rust déduit les types de clé et de valeur lorsque vous insérez des données.
Essayez vous-même
Cette leçon ne comprend pas de défi de code.
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Logic & Flow
1Structures de contrôle avancées
L'expression 'match'Filtrage de plusieurs valeursFiltrage d'intervallesL'expression 'if let'Les boucles en tant qu'expressionsRécapitulatif - Analyseur de commandes simple4Regrouper des données avec les structures
Qu'est-ce qu'une structure ?Aperçu des structuresAccéder aux champs d'une structureStructures mutablesLes structures comme paramètres de fonctionStructures tupleRécapitulatif - Créer une structure Book2Introduction aux vecteurs
Qu'est-ce qu'un vecteur ?Créer un vecteurAjouter des éléments avec pushAccéder aux éléments d'un vecteurItérer sur un vecteurItération mutableSupprimer des élémentsRécapitulatif - Suivi de score basique5Paires clé-valeur avec les Hash Maps
Qu'est-ce qu'une Hash Map ?Créer une Hash MapInsérer des paires clé-valeurAccéder aux valeursParcourir une Hash MapMettre à jour une valeurSupprimer une paireRécapitulatif - Compteur de mots8Projet : Inventaire d'articles simple
Configuration du projetAjouter un articleVérifier le stockVendre un articleAssembler le tout3Liste de tâches en ligne de commande
Configuration du projetAjouter une tâcheAfficher toutes les tâchesSupprimer une tâcheCode final