HashMap est une classe de collection basée sur Map en Java qui est utiliséepour stocker des données dans des paires clé et valeur. Il aide également à implémenter l'interface Map en Java. Au travers de cet article, je vais vous dire comment mettre en œuvre HashMap.
Les sujets ci-dessous sont traités dans cet article:
- Qu'est-ce qu'un Hashmap Java?
- Caractéristiques de Hashmap
- Performances de Java HashMap
- Constructeurs de HashMap en Java
- Implémentation de HashMap
Qu'est-ce qu'un HashMap Java?
HashMap fait essentiellement partie de depuis Java 1.2. Il fournit la mise en œuvre de base de la carte interface en Java . Il stocke généralement les données par paires sous la forme de (Clé, Valeur). Pour accéder à une valeur dans le HashMap, il faut connaître sa clé.
Il est nommé HashMap car il utilise une technique appelée Hashing. Le hachage est un processus de conversion d'une chaîne plus grande en une chaîne plus petite en conservant la valeur du comme constante. La valeur compressée qui en résulte aide à l'indexation et à des recherches plus rapides.
Avec cela, présentons maintenant les différentes fonctionnalités de HashMap en Java.
Caractéristiques de HashMap
Hash Map fait partie d'un util package en Java .
HashMap étend un classe abstraite AbstractMap qui fournit également une implémentation incomplète de l'interface Map.
est-une relation en java
Il implémente également Cloneable et Sérialisable K et V dans la définition ci-dessus représentent respectivement la clé et la valeur.
qu'est-ce qu'une contrainte de clé primaire
HashMap n'autorise pas les clés en double mais autorise les valeurs en double. Cela signifie qu'une seule clé ne peut pas contenir plus d'une valeur, mais que plusieurs clés peuvent contenir une seule valeur.
HashMap autorise uniquement la clé nulle, mais plusieurs valeurs nulles peuvent être utilisées.
Cette classe ne donne aucune garantie quant à l'ordre de la carte en particulier, elle ne garantit pas que l'ordre restera constant dans le temps. Il est à peu près similaire à Hash Table mais n'est pas synchronisé.
Maintenant que vous savez ce qu'est Hashmap et ses différentes fonctionnalités, allons plus loin et comprenons les performances de Java Hashmap.
Performances de Java HashMap
Les performances dépendent principalement de 2 paramètres:
- Capacité initiale : La capacité est simplement le nombre de seaux alors que le Capacité initiale est la capacité de l'instance HashMap lorsqu'elle est créée.
- Facteur de charge: La Facteur de charge est une mesure qui doit être effectuée lors du ressassement. Rehashing est un processus d'augmentation de la capacité. Dans HashMap, la capacité est multipliée par 2. Le facteur de charge est également une mesure permettant de décider quelle fraction du HashMap est autorisée à se remplir avant le rechargement. Lorsque le nombre d'entrées dans le HashMap augmente, le produit de la capacité actuelle et de la capacité du facteur de charge augmente également. Cela implique que le ressassement est fait.
Remarque :Si la capacité initiale est maintenue plus élevée, le rechargement ne sera jamais effectué. Mais en le maintenant plus haut, cela augmente la complexité temporelle de l'itération. Il doit donc être choisi très intelligemment pour augmenter les performances. Le nombre attendu de valeurs doit être pris en compte pour définir la capacité initiale. La valeur du facteur de charge la plus généralement préférée est de 0,75, ce qui permet une bonne répartition des coûts de temps et d'espace. La valeur du facteur de charge varie entre 0 et 1.
Constructeurs dans HashMap
HashMap fournit quatre constructeurs et le access modifier de chacun d'eux est public:
Constructeurs | La description |
1. HashMap () | C'est le constructeur par défaut qui crée une instance de HashMap avec une capacité initiale de 16 et un facteur de charge de 0,75. |
2. HashMap (capacité initiale int) | Ceci est utilisé pour créer une instance HashMap avec une capacité initiale et un facteur de charge de 0,75 spécifiés |
3. HashMap (capacité initiale int, facteur de charge flottant) | Il crée une instance HashMap avec une capacité initiale et un facteur de charge spécifiés. |
4. HashMap (carte de la carte) | Il crée une instance de HashMap avec les mêmes mappages qu'une carte spécifiée. |
Avec cela, voyons maintenant comment mettre en œuvre HashMap dans Java .
obtenir la taille du tableau javascript
Implémentation de HashMap
Le programme ci-dessous illustre comment implémenter HashMap en Java.
package Edureka // Programme Java pour illustrer //Java.util.HashMap import java.util.HashMap import java.util.Map classe publique Hashmap {public static void main (String [] args) {HashMa map = new HashMap () print (map) map.put ('abc', 10) map.put ('mno', 30) map.put ('xyz', 20) System.out.println ('La taille de la carte est' + map.size ( )) print (map) if (map.containsKey ('mno')) {Integer a = map.get ('mno') System.out.println ('value for key ' mno 'is: -' + a )} map.clear () print (map)} public static void print (Map map) {if (map.isEmpty ()) {System.out.println ('map is empty')} else {System.out.println (carte)}}}
Lors de l'exécution du programme HashMap, la sortie se présente comme suit:
la carte est vide La taille de la carte est: - 3 {abc = 10, xyz = 20, mno = 30} la valeur de la clé 'abc' est: - 10 la carte est vide
Cela nous amène donc à la fin de la Article HashMap. J'espère que vous l'avez trouvé informatif et vous avez aidé à comprendre les principes fondamentaux.
Vérifiez par Edureka, une entreprise d'apprentissage en ligne de confiance avec un réseau de plus de 250 000 apprenants satisfaits répartis dans le monde entier. Nous sommes là pour vous aider à chaque étape de votre voyage, pour devenir une autre question d'entrevue java, nous proposons un programme conçu pour les étudiants et les professionnels qui souhaitent devenir développeur Java. Le cours est conçu pour vous donner une longueur d'avance dans la programmation Java et vous former aux concepts Java de base et avancés ainsi qu'à divers frameworks Java tels que Hibernate & Spring.
Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires de cette «Java HashMap 'Article et nous vous répondrons dans les plus brefs délais.