Maison >Java >Javacommencer >Présentation de l'interface Collection et de l'interface Carte

Présentation de l'interface Collection et de l'interface Carte

王林
王林avant
2020-08-14 16:54:022568parcourir

Présentation de l'interface Collection et de l'interface Carte

La collection Java est comme un conteneur, qui peut stocker tout type de données. En Java, les classes de collection existent généralement dans le package Java.util.

(Tutoriel recommandé : Tutoriel d'introduction à Java)

Les collections Java sont principalement composées de deux systèmes principaux, à savoir : le système de collections et le système de cartes. Parmi eux, le système Collection et le système Map sont respectivement les interfaces de premier niveau des deux systèmes.

Collection comporte principalement trois sous-interfaces, à savoir List, Set et Queue.

Ordonné et répétable : liste, file d'attente

Non ordonné et répétable : ensemble

Interface de collection

1. La liste a un ordre, répétable

1. ArrayList

Avantages : La structure de données sous-jacente est un tableau, rapide à interroger et lent à ajouter et à supprimer.

Inconvénients : Thread-dangereux, mais efficace.

2. Vecteur

Avantages : La structure de données sous-jacente est un tableau, rapide à interroger et lent à ajouter et à supprimer.

Inconvénients : sécurité des threads, faible efficacité

3. LinkedList

Avantages : la structure de données sous-jacente est un tableau, la requête est lente et des blocs sont ajoutés et supprimés.

Inconvénients : Thread dangereux, haute efficacité

2. L'ensemble n'est pas ordonné, unique

1. HashSet

La structure de données sous-jacente est une table de hachage. (Non ordonné, unique)

Comment garantir l'unicité des éléments ?

S'appuie sur deux méthodes : hashCode() et equals()

2. 🎜>Les structures de données sous-jacentes sont des listes chaînées et des tables de hachage. (L'insertion FIFO est ordonnée, unique)

Ⅰ Les éléments sont garantis d'être ordonnés par la liste chaînée

Ⅱ Les éléments sont garantis d'être uniques par la table de hachage

<.>3. TreeSet

La structure de données sous-jacente est un arbre rouge-noir. (Unique, commandé)

Comment assurer le tri des éléments ?

Tri naturel, tri par comparateur.

Comment garantir l'unicité des éléments ?

Décidé selon que la valeur de retour de la comparaison est 0.

(Tutoriel vidéo recommandé :

cours java

)

Interface cartographique

1. les classes sont : HashMap, TreeMap et HashTable.

2. Ordonné : TreeMap. Non ordonné : HashMap, HashTable.

3. La principale différence entre HashTable et HashMap :

La méthode de Hashtable est synchrone, mais la méthode de HashMap n'est pas synchrone.

4. Hashtable est thread-safe, mais HashMap n'est pas thread-safe.

5. HashMap est plus efficace que Hashtable.

S'il n'y a aucune exigence de synchronisation ou de compatibilité avec le code existant, il est recommandé d'utiliser HashMap. En regardant le code source de Hashtable, nous pouvons constater que, à l'exception du constructeur, toutes les déclarations de méthodes publiques de Hashtable ont le mot-clé synchronisé, mais cela n'existe pas dans le code source de HashMap.

6. Hashtable n'autorise pas les valeurs nulles et HashMap autorise les valeurs nulles (la clé et la valeur sont autorisées).

7. Différentes classes parentes : La classe parente de Hashtable est Dictionary et la classe parente de HashMap est AbstractMap.

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer