Interface: rouge; Classe d'implémentation: police noire
1. Collection Collection
Collection
| _____ set (hashset)
| | _____ tridset (arrenet)
| _____ Liste (ArrayList, LinkedList, Vector)
Collection : l'interface racine au niveau de la collection. JDK ne fournit pas de classe d'implémentation pour cette interface.
Liste : Orderly (dans l'ordre de placement) peut être répétée et a des indices.
Ensemble : non ordonnée, non répatchée, sans indice.
TRODSET : est une sous-interface de l'interface SET. Les éléments du tri sont ordonnés (par ordre croissant en alphabétique).
Grâce à la méthode compareto de l'interface comparable, les éléments sont implémentés de manière ordonnée. Tous les éléments placés doivent implémenter l'interface comparable (ou être acceptée par le comparateur spécifié).
Différences entre les classes d'implémentation de l'interface de liste :
ArrayList : est essentiellement un tableau. Les fils ne sont pas sûrs. La requête (get / set) est rapide, ajouter / supprimer (ajouter / supprimer) est lente.
LinkedList : essentiellement une liste liée à double sens. Les fils ne sont pas sûrs. La requête (get / set) est lente, ajouter / supprimer est rapide.
Vector : c'est presque exactement la même chose que ArrayList. La seule différence est que le vecteur est synchronisé et est en sécurité.
2. Collection de cartes
Carte (hashmap, hashtable)
| _____ trimedmap (Treemap)
MAP : Il stocke une paire de valeurs de clé, qui ne peut pas contenir des touches en double et peut avoir des valeurs en double.
TridMap : Sous-interface de Map, triMedMap, est une carte qui organise les clés dans l'ordre croissant.
La différence entre hashmap , hashtable et treemap
Hashmap : les fils ne sont pas sûrs. La clé et la valeur peuvent être nulles. Les éléments sont désordonnés. La couche sous-jacente est la structure des données de la table de hachage.
Hashtable : thread-saa. Ni la clé ni la valeur ne peuvent être nuls. Les éléments sont désordonnés. La couche sous-jacente est la structure des données de la table de hachage.
Treemap : les fils ne sont pas sûrs. Ni la clé ni la valeur ne peuvent être nuls. Les éléments sont ordonnés (dans l'ordre alphabétique ascendant). La couche sous-jacente est la structure des données de l'arbre binaire.
3. Comment implémenter la clé et définir les valeurs de la carte sans duplication
La carte met la même clé , puis couvre la précédente
Map map = new HashMap ();
map.put ("nom", "Zhang San");
map.put ("name", "wangwu"); ------- efficace, écraser le précédent
Lorsque le réglage met le même élément, le premier est valide, et le suivant ne sera pas mis dans
Set set = new HashSet ();
set.add ("111"); --- efficace
set.add ("222"); ---- juger qu'il a déjà existé et ne sera pas mis
1. Hashmap put et hashset ajouter
Parce que la méthode Add () de HashSet se transforme en fait pour appeler la méthode Put () de HashMap pour ajouter des paires de valeurs clés lors de l'ajout d'un élément de collecte. La méthode put () de hashmap appelle d'abord .hashcode () pour déterminer que la valeur de retour est égale. Si la valeur de retour est égale, il renvoie True via la comparaison égale. Enfin, on pense que l'objet clé est égal et existe déjà dans HashMap.
2. Treemap put et arreset ajouter
Lorsque la méthode de put est appelée dans Treemap pour ajouter une valeur de clé, la méthode compareto (ou comparer) de l'objet est appelée pour comparer toutes les clés. Si cette méthode renvoie 0, les deux clés sont considérées comme égales.
Lorsque vous ajoutez un élément dans Treeset, appelez compareto ou comparez la méthode pour localiser la position de l'élément, c'est-à-dire Retour Compareto ou comparer à Retour 0, qui est considéré comme la même position, c'est-à-dire le même élément