Comme nous savons qu'il existe essentiellement deux types d'objets Java, ils sont mutables et immuables. Les objets immuables sont les objets dont le contenu ne peut pas être modifié une fois créé. Chaque fois que le contenu d’un objet immuable est modifié, de nouveaux objets seront créés. Dans le cas d'un objet mutable, on peut modifier le contenu d'un objet existant ce qui n'entraîne pas la création d'un nouvel objet. Par conséquent, les chaînes mutables sont les chaînes dont le contenu peut être modifié sans créer de nouveaux objets.
Commencez votre cours de développement de logiciels libres
Développement Web, langages de programmation, tests de logiciels et autres
StringBuffer et StringBuilder sont des versions mutables de String en Java, alors que la classe Java String est immuable. Par conséquent, StringBuffer est une chaîne mutable utilisée pour fournir une mutabilité aux objets chaîne. La classe String contient une séquence de caractères de longueur fixe et immuable, tandis que le tampon de chaîne a une longueur extensible et une séquence de caractères inscriptible.
Voici quelques points qui montrent comment utiliser StringBuffer en Java.
Les constructeurs de tampons de chaîne suivants sont les suivants :
Voici la déclaration de la classe StringBuffer :
public final class StringBuffer extends Object implements Serializable,CharacterSequence,Appendable
Nous allons maintenant voir quelles sont les différentes méthodes et champs disponibles dans StringBuffer. Voici la liste des méthodes couramment utilisées disponibles dans la classe StringBuffer :
Nom de la méthode | Description |
longueur() et capacité() | La longueur d'une chaîne mutable peut être calculée à l'aide de la méthode length(), et la capacité correspondante peut être calculée à l'aide decapacité(). |
append(String str)
append(int number) |
Cette méthode est utilisée pour ajouter un nouveau texte à la fin d'un tampon de chaîne existant. |
insérer(int index, String str)
insérer(int index, char ch) |
Utilisé pour insérer du texte à une position spécifiée dans une chaîne donnée. Dans la syntaxe donnée, index spécifie l'index de départ auquel la chaîne sera insérée. |
inverse() | Utilisé pour inverser l'ordre des caractères dans un objet tampon de chaîne donné. |
delete(int start, int end) et deleteCharAt(int index) | Utilisé pour supprimer des caractères d'un tampon de chaîne. Le début indique l'index de début du premier caractère à supprimer, et la fin indique un index d'un après le dernier caractère à supprimer. |
replace(int startindex, int endindex, String str) | Utilisé pour remplacer la séquence de caractères entre startindex et endindex-1 par le tampon de chaîne spécifié. |
charAt(int index) | Utilisé pour renvoyer le caractère à l'index spécifié dans le tampon de chaîne. |
codePointAt(int index) | Utilisé pour renvoyer l'Unicode du caractère à l'index spécifié. |
codePointBefore(int index) | Utilisé pour renvoyer l'Unicode du caractère avant l'index spécifié. |
sous-chaîne (int start)
substring(int start, int end) |
Used to return a new String that contains a subsequence of characters contained in a given string. |
ensureCapacity(int capacity) | Used for increasing the capacity of an existing string buffer object. |
toString() | Used to convert mutable string buffer to an immutable string object. |
Here are some of the examples of StringBuffer class which are given below:
Let us see a basic example of the StringBuffer class.
Code:
public class StringBufferDemo{ public static void main(String args[]){ StringBuffer sBuffer1=new StringBuffer("Welcome"); System.out.println("Original String is ::: " + sBuffer1 + ":: having length " + sBuffer1.length()); //using append method sBuffer1.append(" To Edubca"); System.out.println("Modified String after append is :: " + sBuffer1 + " :: having length " + sBuffer1.length()); //using reverse method sBuffer1.reverse(); System.out.println("Modified String after Reverse is :: " + sBuffer1); } }
The above code shows the creation of java StringBuffer and its different methods. The following output will be produced.
Output:
In this example, we will see some more methods of the StringBuffer class.
Code:
public class StringBufferDemo{ public static void main(String args[]){ StringBuffer sBuffer=new StringBuffer ("WelcomeToEdubca"); System.out.println("Original String is ::: " + sBuffer + ":: having length " + sBuffer.length()); //using replace method sBuffer.replace(0,9,"This is "); System.out.println("Modified String after replace is :: " + sBuffer + " :: having length " + sBuffer.length()); //using delete method sBuffer.delete(0,7); System.out.println("Modified String after delete is :: " + sBuffer); } }
The above code will display the following as output.
Output:
In the above example, we have seen how to create a StringBuffer class and usage of its methods.
From the above discussion, we have a clear understanding of StringBuffer in java, how it is created, and the different methods available in the StringBuffer class. Also, StringBuffer is thread-safe; therefore, it can be used in a multithreading environment.
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!