English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Les StringBuffer et StringBuilder sont des classes modifiables, utilisées pour effectuer des opérations sur les objets chaînes de caractères, telles que l'inversion des chaînes, la compression des chaînes, etc. Nous pouvons modifier les chaînes sans créer de nouveaux objets de chaînes. Le StringBuffer est sécurisé en ce qui concerne les threads, tandis que le StringBuilder ne l'est pas. Par conséquent, il est plus rapide. De plus, la concaténation des chaînes +Les opérateurs utilisent internement la classe StringBuffer ou StringBuilder. Voici les différences.}
numéro | clé | Zone de mémoire tampon | Générateur de chaîne |
---|---|---|---|
1 | De base | StringBuffer a été introduit dans la version initiale de Java | C'est dans Java 5introduit |
2 | Synchronisé | Il est synchronisé | Différent |
3 | Performance | Il est sécurisé en thread. Par conséquent, plusieurs threads ne peuvent pas accéder en même temps, donc le débit est lent. | Il n'est pas sécurisé en thread, donc plus rapide que la zone de mémoire tampon |
4 | Modifiable | C'est modifiable. Nous pouvons modifier la chaîne sans créer d'objet | C'est aussi modifiable |
5 | stockage | pile | pile |
public class StringBuilderExample{ public static void main(String[] args){ StringBuilder builder = new StringBuilder("Hi"); builder.append("Java 8"); System.out.println("StringBuilderExample" +builder); } }
public class StringBufferExample{ public static void main(String[] args){ StringBuffer buffer = new StringBuffer("Hi"); buffer.append("Java 8"); System.out.println("StringBufferExample" +buffer); } }