Maison  >  Article  >  Java  >  Quelle est la différence entre treemap et hashmap en Java ?

Quelle est la différence entre treemap et hashmap en Java ?

青灯夜游
青灯夜游original
2020-11-11 17:12:5631553parcourir

Différences : 1. Les éléments de HashMap n'ont pas d'ordre ; tous les éléments de TreeMap ont un certain ordre fixe. 2. HashMap hérite de la classe AbstractMap et est implémenté sur la base de la table de hachage ; TreeMap hérite de la classe SortedMap et est implémenté sur la base de l'arborescence rouge-noir.

Quelle est la différence entre treemap et hashmap en Java ?

Recommandations associées : "Tutoriel vidéo Java"

TreeMap et HashMap La différence entre

Map : Dans un tableau, son contenu est indexé via des indices de tableau, tandis que dans Map, les objets sont indexés via des objets. L'objet utilisé pour l'indexation est appelé Key key, sa. l'objet correspondant est appelé valeur ;

1. HashMap utilise hashcode() pour rechercher rapidement son contenu ; les éléments dans HashMap ne sont pas dans l'ordre

dans TreeMap. Tous les éléments ont un certain ordre fixe ; Si vous avez besoin d'obtenir un résultat ordonné, vous devez utiliser TreeMap ;

2. Ni HashMap ni TreeMap ne sont thread-safe

3 , HashMap hérite de la classe AbstractMap ; ) et equals() pour garantir que deux mappages égaux renvoient la même valeur de hachage ;

TreeMap hérite de la classe SortedMap ; il maintient l'ordre ordonné des clés ;

4. sur la table de hachage ; l'utilisation de HashMap nécessite l'ajout de classes clés qui définissent clairement hashcode() et equals() (cette méthode peut être remplacée afin d'optimiser l'utilisation de l'espace de HashMap, vous pouvez ajuster la capacité initiale optimale et le facteur de charge ); >

TreeMap : implémenté sur la base d'un arbre rouge-noir ; TreeMap n'a pas d'options de réglage car l'arbre rouge-noir est toujours dans un état équilibré

5. éléments dans Map ;

TreeMap : convient pour parcourir les clés dans l'ordre naturel ou dans l'ordre personnalisé

Pour plus de connaissances sur la programmation, veuillez visiter :

Site Web d'apprentissage de la programmation ! !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn