Académique Documents
Professionnel Documents
Culture Documents
StringBuffer vs StringBuilder :
StringBuffer StringBuilder
Synchronisation StringBuffer est synchronisé, StringBuilder n’est pas
c’est-à-dire thread-safe. Cela synchronisé, c’est-à-dire qu’il
signifie que deux threads ne n’est pas thread-safe. Cela
peuvent pas appeler les signifie que deux threads
méthodes de StringBuffer peuvent appeler les méthodes
simultanément. de StringBuilder
simultanément.
HashMap vs HashTable
HashMap HashTable
Synchronisation HashMap n’est pas HashTable est synchronisé, est
synchronisé. Il n’est pas un un thread-safe et peut être
thread-safe et ne peut pas être partagé avec de nombreux
partagé entre plusieurs threads.
threads sans code de
synchronisation approprié.
Valeur Null Autorise une clé NULL et N’autorise pas les NULL soit
plusieurs valeurs NULL pour les clés ou les valeurs
Rapidité Rapide Lent
HashSet vs HashMap
HashSet HashMap
Implémentation l’interface Set du Collection l’interface Map
Stockage Stocke des valeurs simples Stocke des données dans des
paires clé/valeur
Duplication Les valeurs en double ne sont Les clés en double ne sont pas
pas acceptées (uniquement les acceptées (uniquement les clés
valeurs uniques) uniques), mais permet les
valeurs en double.
HashCode
Le hashCode() sert uniquement à classer des objets pour les retrouver plus rapidement,
généralement dans un Map...
Thread
Un thread, ou fil d’exécution, aussi parfois appelé “processus léger”, est l’endroit conceptuel où se
déroule l’exécution des instructions.
JAVA
Thread-safe
Protéger l'accès aux données pour n'autoriser qu'un seul thread à y accéder, que ce soit en lecture
ou en écriture.
Volatile
Ce mot clé est censé informer la JVM qu'elle doit rafraîchir le contenu de la variable avant de la
donner en lecture ou en écriture à un thread. On devrait donc être certain de la valeur que la variable
contient. => Mais "est censé", ça ne garantit rien