La boîte à outils Java Collection est située sous le package Java.util et contient de nombreuses structures de données couramment utilisées, telles que des tableaux, des listes liées, des piles, des files d'attente, des collections, des tables de hachage, etc. Dans le cadre de la liste des collections Java, des collections Java, des itérators, des étudiants, des énumérations), des classes de décors (Collirect), des éventualités.
Comme on peut le voir sur la figure ci-dessus, les classes de collecte sont principalement divisées en deux catégories: collection et carte.
La collection est une interface hautement abstraite pour les collections telles que la liste et le jeu. Il contient les opérations de base de ces collections. Il est principalement divisé en deux parties: liste et définie.
L'interface de liste représente généralement une liste (tableau, file d'attente, liste liée, pile, etc.), et les éléments qui y sont répétés. Les classes d'implémentation courantes sont ArrayList et LinkedList, et il existe également des vecteurs qui ne sont pas couramment utilisés. De plus, LinkedList implémente toujours l'interface de file d'attente, il peut donc également être utilisé comme file d'attente.
L'interface définie représente généralement une collection dans laquelle les éléments ne sont pas autorisés à être répétés (garantis par HashCode et égal aux fonctions). Les classes d'implémentation couramment utilisées comprennent HashSet et Treeset. HashSet est implémenté via HashMap dans MAP, et TreeSet est implémenté via Treemap dans MAP. De plus, TreeSet implémente également l'interface tridset, il s'agit donc d'un ensemble ordonné (les éléments de l'ensemble doivent implémenter l'interface comparable et écraser la fonction de comparaison).
Nous voyons que les classes abstraites AbstractCollection, AbstractList et AbstractSet implémentent respectivement les interfaces de collection, de liste et définissent respectivement. Il s'agit des nombreux modèles de conception d'adaptateurs utilisés dans le cadre de la collection Java. Ces classes abstraites sont utilisées pour implémenter les interfaces et implémenter plusieurs ou toutes les méthodes de l'interface de la classe abstraite. De cette façon, certaines des classes suivantes n'ont qu'à hériter directement de la classe abstraite et à implémenter les méthodes dont ils ont besoin, sans implémenter toutes les méthodes abstraites de l'interface.
La carte est une interface de mappage, et chaque élément dedans est une paire de valeurs de clé de valeur clé. De même, la classe abstraite AbstractMap implémente la plupart des fonctions dans l'interface MAP via le mode adaptateur. TREMAP, HashMap, WaibhashMap et d'autres classes d'implémentation sont implémentés en héritant de AbstractMap. De plus, le hashtable inhabituellement utilisé implémente directement l'interface MAP, et l'informatique et le vecteur sont des classes de collecte introduites dans JDK1.0.
L'itérateur est un itérateur qui traverse les collections (ne peut pas traverser la carte, uniquement utilisée pour traverser les collections). Les classes d'implémentation de la collection implémentent la fonction Iterator (), qui renvoie un objet Iterator aux collections Traverse, et ListIterator est spécifiquement utilisé pour parcourir les listes. L'énumération a été introduite dans JDK 1.0 et a la même fonction que Iterator, mais ses fonctions sont inférieures à l'itérateur, et elle ne peut être utilisée que dans le hachage, le vecteur et la pile.
Les tableaux et les collections sont deux classes d'outils utilisées pour manipuler les tableaux et les collections. Par exemple, la méthode Arrays.Copyof () est appelée en grande quantité dans ArrayList et Vector. Il existe de nombreuses méthodes statiques dans les collections qui peuvent renvoyer la version synchronisée de chaque classe de collection, c'est-à-dire la version à filetage. Bien sûr, si vous souhaitez utiliser une classe de combinaison de filetage, la classe de collecte correspondante sous package simultanée simultanée est préférée.
L'analyse complète ci-dessus du code source de la collection Java est tout le contenu partagé par l'éditeur. J'espère que cela pourra vous donner une référence et j'espère que vous pourrez soutenir Wulin.com plus.