Java - Structures de données

Les structures de données fournies par le progiciel Java sont très puissantes et remplissent un large éventail de fonctions. Ces structures de données se composent de l'interface et des classes suivantes -

  • Enumeration
  • BitSet
  • Vector
  • Stack
  • Dictionary
  • Hashtable
  • Properties

Toutes ces classes sont maintenant héritées et Java-2 a introduit un nouveau framework appelé Collections Framework, qui est discuté dans le chapitre suivant. -

L'énumération

L'interface d'énumération n'est pas en elle-même une structure de données, mais elle est très importante dans le contexte d'autres structures de données. L'interface Enumeration définit un moyen de récupérer des éléments successifs à partir d'une structure de données.

Par exemple, Enumeration définit une méthode appelée nextElement qui est utilisée pour obtenir l'élément suivant dans une structure de données qui contient plusieurs éléments.

Pour avoir plus de détails sur cette interface, vérifiez l'énumération .

Le BitSet

La classe BitSet implémente un groupe de bits ou d'indicateurs qui peuvent être définis et effacés individuellement.

Cette classe est très utile dans les cas où vous avez besoin de suivre un ensemble de valeurs booléennes; il vous suffit d'attribuer un peu à chaque valeur et de la définir ou de l'effacer selon le cas.

Pour plus de détails sur cette classe, consultez The BitSet .

Le vecteur

La classe Vector est similaire à un tableau Java traditionnel, sauf qu'elle peut s'agrandir si nécessaire pour accueillir de nouveaux éléments.

Comme un tableau, les éléments d'un objet Vector sont accessibles via un index dans le vecteur.

L'avantage d'utiliser la classe Vector est que vous n'avez pas à vous soucier de la définir à une taille spécifique lors de la création; il rétrécit et grandit automatiquement si nécessaire.

Pour plus de détails sur cette classe, consultez The Vector .

La pile

La classe Stack implémente une pile d'éléments LIFO (last-in-first-out).

Vous pouvez penser à une pile littéralement comme une pile verticale d'objets; lorsque vous ajoutez un nouvel élément, il est empilé sur les autres.

Lorsque vous retirez un élément de la pile, il se détache du haut. En d'autres termes, le dernier élément que vous avez ajouté à la pile est le premier à revenir.

Pour plus de détails sur cette classe, consultez The Stack .

Le dictionnaire

La classe Dictionary est une classe abstraite qui définit une structure de données pour mapper des clés à des valeurs.

Ceci est utile dans les cas où vous souhaitez pouvoir accéder aux données via une clé particulière plutôt qu'un index entier.

La classe Dictionary étant abstraite, elle ne fournit que le cadre d'une structure de données mappée par clé plutôt qu'une implémentation spécifique.

Pour plus de détails sur cette classe, consultez le dictionnaire .

Le Hashtable

La classe Hashtable fournit un moyen d'organiser les données en fonction d'une structure de clé définie par l'utilisateur.

Par exemple, dans une table de hachage de liste d'adresses, vous pouvez stocker et trier les données en fonction d'une clé telle que le code postal plutôt que sur le nom d'une personne.

La signification spécifique des clés en ce qui concerne les tables de hachage dépend totalement de l'utilisation de la table de hachage et des données qu'elle contient.

Pour plus de détails sur cette classe, consultez The Hashtable .

Les propriétés

Properties est une sous-classe de Hashtable. Il est utilisé pour maintenir des listes de valeurs dans lesquelles la clé est une chaîne et la valeur est également une chaîne.

La classe Properties est utilisée par de nombreuses autres classes Java. Par exemple, il s'agit du type d'objet renvoyé par System.getProperties () lors de l'obtention des valeurs environnementales.

Pour plus de détails sur cette classe, consultez les propriétés .