Un HashMap (ou un HashTable) est une structure de données qui permet un accès rapide aux données à l'aide de paires clé-valeur. La classe Java HashMap étend la RésuméCarte classe et implémente l'interface Map, qui lui donne accès à de nombreuses opérations. Les HashMaps ont deux paramètres de type: K et V, où K stocke les clés et V stocke les valeurs dans chaque HashMap.
Le HashMap vous permet de mapper des clés à une valeur spécifique et de stocker des éléments dans un ordre aléatoire. Dans cet article, vous apprendrez à utiliser la classe HashMap de Java pour stocker, récupérer, mettre à jour et supprimer des données.
Créer une HashMap Java
La classe Java HashMap a quatre constructeurs. Le constructeur par défaut est le plus populaire, il vous permet de créer un HashMap vide qui aura une capacité par défaut de 16.
importerJava.util.HashMap;
PubliqueclasserPrincipal{
Publiquestatiqueannulerprincipale(Chaîne [] arguments){
// création d'un HashMap
HashMap<Entier, Chaîne> fruitsMap = nouveau HashMap<Entier, Chaîne>();
}
}
La Classe Java ci-dessus utilise le constructeur HashMap par défaut pour créer une structure de données appelée fruitsCarte. L'objet fruitsMap stockera des données qui ont une clé entière et une valeur de chaîne. Cependant, étant donné que la classe HashMap implémente l'interface Map, elle peut stocker une valeur nulle dans le champ clé, le champ valeur ou les deux.
Stocker des données dans un HashMap
Vous pouvez effectuer plusieurs opérations à l'aide de la classe HashMap. La mettre (touche K, valeur V) fait partie de ses méthodes les plus populaires et vous permet de stocker des données à l'aide d'une paire clé-valeur, où chaque clé correspond à une valeur.
importerJava.util.HashMap;
PubliqueclasserPrincipal{
Publiquestatiqueannulerprincipale(Chaîne [] arguments){
// création d'un HashMap
HashMap<Entier, Chaîne> fruitsMap = nouveau HashMap<Entier, Chaîne>();
// ajouter des éléments à HashMap
fruitsMap.put (3,"Poire");
fruitsMap.put (6,"Mangue");
fruitsMap.put (7,"Prune");
fruitsMap.put (4,"Pomme");
fruitsMap.put (1,"Orange");
fruitsMap.put (5,"Baies");
fruitsMap.put (2,"Melon");
}
}
La classe mise à jour ci-dessus utilise la méthode put() pour ajouter plusieurs fruits et leur clé à la structure de données fruitMap existante. Il est important de noter que le code ci-dessus ajoute les données à la carte de manière aléatoire. Ce détail deviendra utile lorsque vous commencerez à lire les données du HashMap.
Lire les données d'un HashMap
Il existe plusieurs façons de lire les données d'un HashMap. La méthode que vous utiliserez dépendra de l'aspect que vous souhaitez donner aux données ou même du type de données que vous souhaitez récupérer.
Récupérer l'objet HashMap
Si vous souhaitez récupérer les données en tant qu'objet, vous pouvez simplement accéder à l'objet HashMap, qui dans l'exemple ci-dessous est fruitsMap.
//Afficher tous les éléments en tant qu'objet
Système.dehors.println(fruitsCarte);
L'ajout de la ligne de code ci-dessus à la classe Main imprime la sortie suivante dans la console :
{1=Orange, 2=Melon, 3=Poire, 4=Pomme, 5=Baies, 6=Mangue, 7=Prune}
Bien que chaque valeur ait été ajoutée au hasard au HashMap, à partir de la sortie, vous verrez que HashMap stocke les valeurs dans l'ordre croissant, en fonction de la clé attribuée à chaque valeur. Il s'agit d'une fonctionnalité qui place HashMaps avant d'autres structures de données telles que le Structure de données du tableau qui ne prennent en charge que le stockage linéaire.
Récupérer toutes les données individuellement
Si vous souhaitez récupérer toutes les données individuellement, vous pouvez utiliser le pour méthode qui vous permet de parcourir le HashMap et d'imprimer chaque valeur et sa clé correspondante. Cette méthode utilise l'interface Map que la classe HashMap implémente.
// afficher tous les éléments avec un itérateur
pour (HashMap. Entrée<Entier, Chaîne> fruits: fruitsMap.entrySet())
{
System.out.println("Clé: " + fruit.getKey() + " Évaluer: " + fruit.getValue());
}
L'ajout de la méthode ci-dessus à votre code imprimera la sortie suivante dans votre console :
Légende: 1 Valeur: Orange
Clé: 2 Valeur: Melon
Clé: 3 Valeur: Poire
Clé: 4 Valeur: Pomme
Clé: 5 Valeur: Baies
Clé: 6 Valeur: Mangue
Clé: 7 Valeur: Prune
Récupérer une valeur spécifique
La classe HashMap a une obtenir() méthode qui prend une clé et renvoie la valeur mappée à cette clé.
//récupérer un seul élément
Système.dehors.println(fruitsCarte.obtenir(4));
La ligne de code ci-dessus imprime le résultat suivant dans la console :
Pomme
Mise à jour des données dans un HashMap
Après avoir créé et rempli un objet HashMap, vous pouvez utiliser le remplacer() méthode pour mettre à jour n'importe quel élément de la carte. La méthode replace() prend deux ou trois arguments. La première méthode replace() prend la clé associée à un élément existant, ainsi que la nouvelle valeur que vous souhaitez lui mapper.
// remplace un seul élément
fruitsMap.replace (4, "Raisins");
Système.dehors.imprimer(fruitsCarte);
L'exécution du code ci-dessus imprime l'objet suivant dans la console :
{1=Orange, 2=Melon, 3=Poire, 4=Raisins, 5=Baies, 6=Mangue, 7=Prune}
Comme vous pouvez le voir sur l'objet ci-dessus, « Raisins » correspond à 4, qui était auparavant mappé à « Pomme ».
La seconde méthode replace() prend la clé associée à l'élément existant, l'élément existant et la valeur de remplacement.
// remplace un seul élément
fruitsMap.replace (4, "Pomme", "Raisins");
Système.dehors.imprimer(fruitsCarte);
Le code ci-dessus imprime l'objet suivant dans la console :
{1=Orange, 2=Melon, 3=Poire, 4=Raisins, 5=Baies, 6=Mangue, 7=Prune}
Suppression de données d'un HashMap
Vous pouvez soit supprimer un élément spécifique de votre HashMap en utilisant le retirer() méthode ou supprimer toutes les données à l'aide de la dégager() méthode. La méthode remove() prend un ou deux arguments. La première méthode de suppression prend la clé associée à la valeur que vous souhaitez supprimer :
// supprimer un seul élément
fruitsCarte.retirer(5);
Système.dehors.println(fruitsCarte);
Le code ci-dessus imprime l'objet suivant dans la console :
{1=Orange, 2=Melon, 3=Poire, 4=Pomme, 6=Mangue, 7=Prune}
L'objet mis à jour montre que l'élément avec la paire clé-valeur de 5 et "Berries" ne fait plus partie de fruitsMap. La deuxième méthode remove() prend une clé et la valeur à laquelle elle correspond.
// supprimer un seul élément
fruitsMap.remove (5, "Baies");
Système.dehors.println(fruitsCarte);
Le code ci-dessus imprime également l'objet suivant dans la console :
{1=Orange, 2=Melon, 3=Poire, 4=Pomme, 6=Mangue, 7=Prune}
La méthode clear() ne prend aucun argument et renvoie void.
fruitsCarte.dégager();
Système.dehors.println(fruitsCarte);
L'exécution du code ci-dessus imprime l'objet vide suivant dans la console :
{}
Vous pouvez maintenant effectuer des opérations CRUD sur un HashMap Java
Les HashMaps sont l'une des nombreuses structures de données populaires que vous devez connaître. Cet article vous apprend à effectuer des opérations CRUD sur Java HashMaps. Le HashMap est une structure de données très utile, son principal argument de vente est qu'il s'agit de l'une des structures de données les plus efficaces, en raison de sa vitesse d'accès. Cependant, il est également très pratique à utiliser, car il permet un stockage aléatoire.