Classes de tampon de chaîne et de générateur de chaîne

le StringBuffer et StringBuilder Les classes sont utilisées lorsqu'il est nécessaire d'apporter de nombreuses modifications aux chaînes de caractères.

Contrairement à Strings, les objets de type StringBuffer et String builder peuvent être modifiés encore et encore sans laisser derrière eux beaucoup de nouveaux objets inutilisés.

La classe StringBuilder a été introduite à partir de Java 5 et la principale différence entre StringBuffer et StringBuilder est que les méthodes StringBuilders ne sont pas thread-safe (non synchronisées).

Il est recommandé d'utiliser StringBuilderchaque fois que possible car il est plus rapide que StringBuffer. Toutefois, si la sécurité des threads est nécessaire, la meilleure option est les objets StringBuffer.

Exemple

public class Test {

   public static void main(String args[]) {
      StringBuffer sBuffer = new StringBuffer("test");
      sBuffer.append(" String Buffer");
      System.out.println(sBuffer);  
   }
}

Cela produira le résultat suivant -

Production

test String Buffer

Méthodes StringBuffer

Voici la liste des méthodes importantes prises en charge par la classe StringBuffer -

N ° Sr. Méthodes et description
1 public StringBuffer append (String s)

Met à jour la valeur de l'objet qui a appelé la méthode. La méthode prend boolean, char, int, long, Strings, etc.

2 public StringBuffer reverse ()

La méthode inverse la valeur de l'objet StringBuffer qui a appelé la méthode.

3 suppression publique (début int, fin int)

Supprime la chaîne à partir de l'index de début jusqu'à l'index de fin.

4 insert public (décalage int, int i)

Cette méthode insère une chaîne s à la position mentionnée par le décalage.

5 replace (int start, int end, String str)

Cette méthode remplace les caractères d'une sous-chaîne de ce StringBuffer par des caractères de la chaîne spécifiée.

Voici la liste des autres méthodes (à l'exception des méthodes set) qui sont très similaires à la classe String -

N ° Sr. Méthode et description
1

int capacity()

Renvoie la capacité actuelle du tampon String.

2

char charAt(int index)

Le caractère spécifié de la séquence actuellement représentée par le tampon de chaîne, comme indiqué par l'argument d'index, est renvoyé.

3

void ensureCapacity(int minimumCapacity)

Garantit que la capacité du tampon est au moins égale au minimum spécifié.

4

void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)

Les caractères sont copiés de ce tampon de chaîne dans le tableau de caractères de destination dst.

5

int indexOf(String str)

Renvoie l'index dans cette chaîne de la première occurrence de la sous-chaîne spécifiée.

6

int indexOf(String str, int fromIndex)

Renvoie l'index dans cette chaîne de la première occurrence de la sous-chaîne spécifiée, en commençant à l'index spécifié.

sept

int lastIndexOf(String str)

Renvoie l'index dans cette chaîne de l'occurrence la plus à droite de la sous-chaîne spécifiée.

8

int lastIndexOf(String str, int fromIndex)

Renvoie l'index dans cette chaîne de la dernière occurrence de la sous-chaîne spécifiée.

9

int length()

Renvoie la longueur (nombre de caractères) de ce tampon de chaîne.

dix

void setCharAt(int index, char ch)

Le caractère à l'index spécifié de ce tampon de chaîne est défini sur ch.

11

void setLength(int newLength)

Définit la longueur de ce tampon de chaîne.

12

CharSequence subSequence(int start, int end)

Renvoie une nouvelle séquence de caractères qui est une sous-séquence de cette séquence.

13

String substring(int start)

Renvoie un nouveau String qui contient une sous-séquence de caractères actuellement contenus dans ce StringBuffer. La sous-chaîne commence à l'index spécifié et s'étend jusqu'à la fin de StringBuffer.

14

String substring(int start, int end)

Renvoie un nouveau String qui contient une sous-séquence de caractères actuellement contenus dans ce StringBuffer.

15

String toString()

Se convertit en une chaîne représentant les données de ce tampon de chaîne.