Chargement...

HashMap en Java

Créez un HashMap<String, String> nommé scores, appelez scores.put("oak", "leaf");, puis affichez scores.get("oak"). Compilez Desk.java et lancez java Desk. L’écran doit montrer une ligne : leaf. La clé "oak" trouve la valeur "leaf". Placer une paire et la relire par clé, voilà ce que cette page enseigne.

Une clé qui trouve une valeur

Sur la page list-methods, vous atteigniez les valeurs par numéro de case : get(0). Un HashMap atteint une valeur par une clé que vous choisissez. Vous écrivez la paire avec put. Vous lisez la valeur avec get et la même clé. Il n’y a pas de case zéro sur le chemin pédagogique de cette leçon — la clé est l’étiquette.
Ouvrez Desk.java. Gardez le nom de classe publique Desk pour qu’il corresponde au nom de fichier. Supprimez les lignes ArrayList restantes, tags.get(0), tags.size(), tags.remove(0) et tout démo Rack ou Shelf. Elles appartiennent aux pages de listes. Supprimez aussi tout Scanner, nextLine ou lecture clavier. Le programme ne doit pas attendre de saisie.
Près du haut, au-dessus de public class Desk, écrivez :
import java.util.HashMap;
Cet import rend le type HashMap accessible sous le nom court. Sans lui, javac ne voit pas le nom court HashMap sur cette page. Orthographiez java.util et HashMap avec soin. N’inventez pas import java.util.*; comme exigence ici — un import exact suffit.
Dans main, créez la map :
HashMap<String, String> scores = new HashMap<String, String>();
Le premier type entre les chevrons est le type de clé. Le second est le type de valeur. Les deux sont String sur cette page pour que la démo reste avec des mots. Le nom scores est celui que vous gardez dans le fichier d’enseignement. L’appel new HashMap<String, String>() construit une map vide. À cet instant elle ne contient aucune paire.

Placez oak vers leaf, puis lisez oak

Appelez scores.put("oak", "leaf"); sur sa propre ligne. Le premier mot entre guillemets est la clé. Le second est la valeur. L’ordre dans put compte : clé d’abord, valeur ensuite. Ne les inversez pas dans le fichier que vous conservez.
Puis écrivez :
System.out.println(scores.get("oak"));
Passez la même clé "oak" à get. Ne passez pas "leaf" comme argument de get pour le fichier conservé — get demande la clé, pas la valeur. N’écrivez pas scores.get(0) — c’est la forme liste de Rack, pas la forme map ici. Enregistrez avant de compiler.

Desk put then get

java
import java.util.HashMap;

public class Desk {
    public static void main(String[] args) {
        HashMap<String, String> scores = new HashMap<String, String>();
        scores.put("oak", "leaf");
        System.out.println(scores.get("oak"));
    }
}

Depuis le dossier qui contient Desk.java, lancez javac Desk.java. Quand parenthèses, accolades, chevrons et points-virgules correspondent, javac n’écrit aucune ligne de lui-même. Puis lancez java Desk — pas java Desk.java, et pas java HashMap. Laissez la fin .java hors de la commande d’exécution. Démarrez la classe qui contient main.
Le programme doit imprimer une ligne et s’arrêter : leaf. Il ne doit pas vous demander de taper. Si le terminal attend une saisie clavier, un appel nextLine d’un exercice plus ancien reste dans un fichier. Supprimez cet appel et gardez la création HashMap, la ligne put et System.out.println(scores.get("oak"));.
Parcourez l’exécution une fois. Java démarre à Desk.main. L’import a déjà nommé quel HashMap vous visez. La ligne new construit une map vide. put stocke la paire oak → leaf. L’appel get("oak") renvoie leaf. La ligne d’impression écrit ce mot. L’écran montre leaf. Rien d’autre ne doit s’imprimer. Si vous voyez oak, vous avez imprimé la clé à la main ou utilisé le mauvais argument get. Si vous voyez 2 ou [pine], un démo size ou remove de Rack tourne encore — passez à java Desk.
Si javac dit qu’il ne trouve pas HashMap, la ligne import manque, est mal orthographiée ou placée après public class Desk. Déplacez import java.util.HashMap; au-dessus de la ligne de classe. Si vous appelez get("oak") avant tout put, l’impression peut montrer null car cette clé n’a jamais été stockée. Gardez put avant get sur cette page. Si vous écrivez scores.put(oak, leaf); sans guillemets, javac traite les mots comme des noms qui n’existent pas. Gardez les guillemets autour de la clé et de la valeur.

Afficher toute la map en second regard

Un second fichier Desk imprime l’objet map après le même put. Cela montre la forme de paire que Java utilise quand vous imprimez la map elle-même.

Desk print whole map

java
import java.util.HashMap;

public class Desk {
    public static void main(String[] args) {
        HashMap<String, String> scores = new HashMap<String, String>();
        scores.put("oak", "leaf");
        System.out.println(scores);
    }
}

Compilez et lancez ce second fichier de la même façon. L’écran montre {oak=leaf} — clé, signe égal, valeur, entre accolades. Cette forme sert à confirmer que la paire est dans la map. Le chemin pédagogique pour l’écran du quiz leaf reste le premier fichier avec get("oak"). Utilisez l’impression de toute la map seulement pour voir la paire stockée. Ne mélangez pas get(0) dans aucun fichier Desk — les maps n’utilisent pas les numéros de case de liste sur cette page.
Si l’écran montre [] ou [oak, pine], un démo ArrayList tourne encore. Restez avec HashMap et java Desk.

Comparé au get de liste et à put

Sur la page list-methods, get(0) avait besoin d’un index de case après add. Sur cette page, get("oak") a besoin de la chaîne clé après put. Un fichier Rack restant qui n’imprime que tags.get(0) est une autre leçon. Pour cette page gardez dans Desk les appels put("oak", "leaf") et get("oak").
Vous pouvez stocker plus de paires avec d’autres appels put. Cette page en garde une seule pour que la clé et la valeur imprimée restent faciles à voir. Une page plus tard — HashSet — stocke des valeurs uniques sans histoire séparée de paire clé-valeur. Restez ici avec put et get de HashMap.
Quand de vieux fichiers Rack.java ou Shelf.java restent à proximité, laissez-les ou ne les supprimez que s’ils embrouillent quelle classe vous lancez. Lancez java Desk après avoir compilé le fichier HashMap de cette leçon.

Ce qui reste pour HashSet

Cette page ouvre le stockage clé-valeur avec HashMap. La page suivante ouvre un ensemble de valeurs uniques avec HashSet. Restez ici avec put et get sur la map. N’inventez pas le add de set comme exigence sur cette page ; l’objectif de la leçon est la clé qui trouve la valeur et l’écran leaf.

Avant HashSet

Vous pouvez importer java.util.HashMap, créer HashMap<String, String> scores, appeler scores.put("oak", "leaf");, puis afficher scores.get("oak"). Compilez Desk.java et lancez java Desk. L’écran montre leaf. La clé a trouvé la valeur. La page suivante est HashSet, où vous stockez des valeurs uniques sans associer chacune à une clé séparée sur le chemin de cette leçon-là.
Gardez l’import au-dessus de la classe. Gardez put avant get. Gardez la clé "oak" identique dans les deux appels. Ces trois habitudes sont le point de contrôle de cette page avant d’avancer. Quand l’écran montre leaf après get("oak"), HashMap a fait son travail pour cette leçon et vous êtes prêt pour le sujet suivant.

🧠 Testez Vos Connaissances

Prêt à Commencer

Testez Vos Connaissances

Mettez-vous au défi avec ce quiz interactif et voyez à quel point vous comprenez le sujet

❓
5
Questions
🎯
70%
Pour Réussir
♾️
∞
Temps
🔄
∞
Tentatives

📝 Instructions

  • Lisez chaque question attentivement
  • Sélectionnez la meilleure réponse pour chaque question
  • Vous pouvez refaire le quiz autant de fois que vous le souhaitez
  • Votre progression sera affichée en haut