Un tableau est utilisé pour stocker un ensemble d'éléments de données du même type. La plupart des langages de programmation prennent en charge les tableaux. Même si un tableau peut stocker plusieurs valeurs; il y a un inconvénient majeur. Une fois le tableau créé, il n'est pas possible de le changer. Si le programmeur a déclaré un tableau de 10 éléments, il ne peut pas stocker 15 éléments. Lorsque le programmeur déclare un tableau de 10 éléments et ne stocke que 5 éléments, le reste de la mémoire allouée est une perte. Les langages de programmation tels que Java disposent de Collections pour stocker les éléments de données de manière dynamique. Il y a un certain nombre de collections. Les collections permettent d’ajouter, de supprimer des éléments et d’autres opérations. L'interface de base est appelée Collection. Set, List et Queue sont des interfaces qui étendent l’interface Collection. La carte est une interface de la hiérarchie de la collection, mais elle ne prolonge pas l'interface de la collection.. TreeSet est une classe qui implémente l'interface Set et stocke les éléments dans l'ordre croissant. TreeMap est une classe qui implémente l'interface Map et stocke les paires clé / valeur par ordre croissant. C'est le différence clé. Cet article traite de la différence entre TreeSet et TreeMap.
1. Vue d'ensemble et différence clé
2. Qu'est-ce que TreeSet?
3. Qu'est-ce que TreeMap?
4. Similarités entre TreeSet et TreeMap
5. Comparaison côte à côte - TreeSet vs TreeMap sous forme tabulaire
6. Résumé
TreeSet est une classe qui implémente l'interface Set. Le TreeSet conserve des éléments uniques. TreeSet implémente l'interface NavigableSet. L’interface Navigable étend les interfaces SortedSet, Set, Collection et Iterable dans un ordre hiérarchique. TreeSet stocke les éléments dans l'ordre croissant. Si l'ordre d'insertion est A, C, B, le TreeSet les stockera sous les noms A, B, C. Il existe des méthodes de TreeSet. La méthode add est utilisée pour ajouter un élément à l'ensemble. La méthode remove est utilisée pour supprimer un élément spécifié. La méthode clear est utilisée pour supprimer tous les éléments. La méthode contains renvoie true si l'élément spécifié est présent dans le Set. Ce sont quelques méthodes fournies par TreeSet. Voir le programme ci-dessous.
Figure 01: Programme utilisant TreeSet
Selon le programme ci-dessus, Treeset est un objet de type TreeSet. Il peut stocker des chaînes. Les éléments sont ajoutés en utilisant la méthode add. L'ordre d'insertion est A, C, D et B. À l'aide de l'itérateur, les valeurs stockées sont imprimées à l'écran. Les éléments sont stockés dans l'ordre A, B, C, D. Par conséquent, TreeSet conserve un ordre croissant des éléments de l'ensemble. S'il existe un autre élément en tant que “D”, il ne sera pas imprimé car l'élément D existe déjà dans l'ensemble. Il stocke toujours des éléments uniques.
TreeMap est une classe qui implémente l'interface Map. La carte prend en charge les paires clé-valeur. Chaque clé, paire de valeurs est une entrée. Chaque clé est unique et a une valeur correspondante. La méthode containsKey permet de rechercher une clé spécifique, tandis que la méthode containsValue permet de rechercher une valeur spécifique. La méthode get est utilisée pour trouver la valeur correspondant à la clé donnée. La méthode put est utilisée pour stocker une valeur avec la clé donnée. Il est également possible de supprimer un élément d'une clé spécifique à l'aide de la méthode remove. Ce sont quelques méthodes communes de l'interface de carte. Il est utile de rechercher, insérer et supprimer des éléments en fonction de la clé. La classe TreeMap implémente NavigableMap. NavigableMap étend SortedMap. SortedMap étend la carte. Par conséquent, les méthodes de la carte peuvent être utilisées avec TreeMap. Voir le programme ci-dessous.
Figure 02: Programme utilisant TreeMap
Selon le programme ci-dessus, un objet de TreeMap est créé. Le programmeur peut ajouter des éléments à l'aide de l'objet. La méthode put est utilisée pour insérer des paires clé / valeur. La méthode get est utilisée avec la clé spécifique pour récupérer les éléments. Le programmeur peut utiliser Map.Entry pour imprimer toutes les clés et toutes les valeurs. Lors de l'observation de la sortie, il ne conserve pas l'ordre inséré. Il stocke les éléments dans l'ordre croissant.
TreeSet vs TreeMap | |
TreeSet est une classe qui implémente l'interface Set et stocke les éléments dans l'ordre croissant.. | TreeMap est une classe qui implémente l'interface Map et stocke les paires clé / valeur par ordre croissant. |
Interface implémentée | |
TreeSet implémente l'interface Set. | TreeMap implémente l'interface Map. |
Un tableau est utilisé pour stocker un ensemble d’éléments, mais il n’est pas utile de stocker les éléments de manière dynamique. Les langages de programmation tels que Java contiennent des collections pour stocker des éléments de données de manière dynamique. Collection est la classe de base dans la hiérarchie des collections. Il se compose de classes et d'interfaces permettant d'effectuer des opérations telles que l'ajout, la suppression d'éléments. Set et Map sont deux interfaces de la hiérarchie des collections. TreeSet est une classe qui implémente l'interface Set et stocke les éléments dans l'ordre croissant. TreeMap est une classe qui implémente l'interface Map et stocke les paires clé / valeur par ordre croissant. Telle est la différence entre TreeSet et TreeMap.
1. "TreeSet in Java - javatpoint." , Java Point. Disponible ici
2. "TreeMap in Java - javatpoint.", Java Point. Disponible ici