StringBuffer en Java : 11 méthodes populaires que tout développeur Java devrait connaître
Publié: 2021-05-26Table des matières
Introduction à StringBuffer en Java
StringBuffer en java est une classe qui hérite des méthodes de la classe java.lang.Object. Il s'agit d'une classe homologue de String utilisée pour créer une chaîne modifiable ou mutable. Il fournit une grande partie des fonctionnalités de String, sauf qu'il peut être modifié, c'est-à-dire qu'il représente des séquences de caractères inscriptibles et extensibles au lieu de séquences de caractères immuables et de longueur fixe. Voici quelques points essentiels sur le java.lang.StringBuffer en Java :
· Le contenu et la longueur de la séquence de caractères peuvent être modifiés par divers appels de méthode.
· Il est thread-safe, c'est-à-dire qu'il peut être utilisé en toute sécurité par plusieurs threads
· Chaque StringBuffer en Java a une capacité.
· Les sous-chaînes et les caractères peuvent être ajoutés à la fin ou insérés au milieu. Il grandit automatiquement et fait de la place pour les ajouts. Souvent, plus de caractères sont préalloués que nécessaire pour laisser de la place à la croissance.
Voici comment le StringBuffer dans la classe Java est déclaré :
classe finale publique StringBuffer
étend l'objet
implémente Serializable, CharSequence
Constructeurs de la classe StringBuffer
1. StringBuffer() - Ceci est utilisé pour construire un tampon de chaîne avec une capacité initiale de 16 caractères et aucun caractère dedans. Syntaxe:
StringBuffer a =nouveau StringBuffer();
2. StringBuffer (CharSequence seq) – Ceci est utilisé pour construire un tampon de chaîne qui contient les mêmes caractères que dans CharSequence.
3. StringBuffer (capacité int) – Ceci est utilisé pour créer un tampon de chaîne dont la capacité initiale est spécifiée et sans caractères. Syntaxe:
StringBuffer a=nouveau StringBuffer(10);
4. StringBuffer (String str) – Ceci est utilisé pour créer un tampon de chaîne avec le contenu String donné. Syntaxe:
StringBuffer a=new StringBuffer("stringbuffer en java");
Lire : Différence entre les tampons de chaînes et les constructeurs de chaînes
11 méthodes populaires
1) StringBuffer dans la méthode Java Append()
.append() est utilisé pour concaténer la chaîne et l'argument donnés. Voici un exemple :
importer java.io.* ;
tampon de classe publique {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer("stringbuffer");
a.append("en Java");
System.out.println(a);
a.append(0);
System.out.println(a);
}
}
Sortir:
2) StringBuffer dans la méthode Java Insert ()
La méthode .insert() est utilisée pour insérer une chaîne donnée avec la chaîne principale à la position spécifiée. Voici un exemple :
importer java.io.* ;
tampon de classe publique {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer("stringbuffer");
a.insert(5, "pour");
System.out.println(a);
a.insert(0, 5);
System.out.println(a);
a.insert(3, faux);
System.out.println(a);
a.insérer(5, 41.55d);
System.out.println(a);
a.insérer(8, 41.55f);
System.out.println(a);
char arr[] = { 'j', 'a', 'v', 'a' } ;
a.insert(2, arr);
System.out.println(a);
} }
Sortir:
Lisez également : Idées et sujets de projet Java
3) StringBuffer dans la méthode java replace()
.replace() est utilisé pour remplacer une partie de la chaîne comme spécifié dans la plage (beginIndex, endIndex). Voici un exemple :
importer java.io.* ;
tampon de classe publique {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer("stringbuffer");
a.replace(5, 8, "sont");
System.out.println(a);
}
}
Sortir:
4) StringBuffer dans la méthode Java Delete()
.delete() est utilisé pour supprimer la chaîne comme spécifié dans la plage (beginIndex, endIndex).
.deleteCharAt() est utilisé pour supprimer le caractère à un index spécifique. Cette méthode renvoie l'objet stringbuffer résultant. Voici un exemple :
importer java.io.* ;
tampon de classe publique {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer("string buffer in java");
a.delete(0, 6);
System.out.println(a);
a.deleteCharAt(7);
System.out.println(a);
}
}
Sortir:
5) StringBuffer dans la méthode Java Reverse()
.reverse() comme son nom l'indique est utilisé pour inverser la chaîne donnée. Voici un exemple :
importer java.io.* ;
tampon de classe publique {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer("stringbuffer");
a.reverse();
System.out.println(a);
}
}
Sortir:
6) StringBuffer dans la méthode Java Capacity()
.capacity() de StringBuffer dans la classe Java est utilisé pour renvoyer la capacité actuelle du tampon. 16 est la capacité par défaut. La capacité augmente en augmentant le nombre de caractères. La nouvelle capacité = (ancienne capacité*2)+2. c'est-à-dire que si la capacité actuelle est de 16, la nouvelle capacité sera de 32+2=34.
.length est utilisé pour trouver la longueur d'un StringBuffer en java. Par exemple:
importer java.io.* ;
tampon de classe publique {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer("stringbuffer");
int p = a.length();
int q = a.capacity();
System.out.println("La longueur de la chaîne est=" + p);
System.out.println("La capacité de la chaîne est =" + q);
}
}
Sortir:
Obtenez des diplômes en génie logiciel en ligne dans les meilleures universités du monde. Gagnez des programmes Executive PG, des programmes de certificat avancés ou des programmes de maîtrise pour accélérer votre carrière.
7) StringBuffer dans la méthode JavaassureCapacity()
.ensureCapacity() de la classe stringbuffer est utilisé pour s'assurer que la capacité spécifiée est le minimum par rapport à la capacité actuelle. Si la capacité donnée est supérieure à la capacité actuelle, la nouvelle capacité devient (ancienne capacité*2)+2. c'est-à-dire que la capacité devient 34 si oldcapacity est 16. Par exemple :
tampon de classe publique{
public static void main(String args[]){
StringBuffer a=nouveau StringBuffer();
System.out.println(a.capacity());
a.append("Bonjour");
System.out.println(a.capacity());
a.append("java");
System.out.println(a.capacity());
a.assureCapacity(10);
System.out.println(a.capacity());
a.assureCapacity(50);
System.out.println(a.capacity());
}
}
Sortir:
Paiement : salaire d'un développeur Java en Inde
8. charAt(int index) – Cette méthode est utilisée pour renvoyer le caractère à l'index donné.
9. substring( int begIndex) – Cette méthode est utilisée pour renvoyer la sous-chaîne d'une chaîne donnée à partir de beginIndex.
10. substring(int beginIndex, int endIndex) – Cette méthode est utilisée pour renvoyer la sous-chaîne de la chaîne donnée commençant à beginIndex et se terminant à endIndex.
11. void trimToSize() – Cette méthode est utilisée pour réduire l'espace de stockage pour la séquence de caractères
Différence entre String et StringBuffer en Java
Nous utilisons cet exemple pour créer des objets de la classe StringBuffer et String et les modifier. Nous voyons que l'objet StringBuffer est modifié, contrairement à String. Voir l'exemple ci-dessous :
tampon de classe publique {
public static void main(String args[])
{
Chaîne str = "chaîne" ;
str.concat("tampon");
System.out.println(str);
StringBuffer strB = new StringBuffer("string");
strB.append("tampon");
System.out.println(strB);
}
}
Sortir:
Explication : La sortie est telle car les chaînes sont immuables. Si nous essayons de concaténer l'objet string, il ne sera pas modifié. Cependant, un StringBuffer en Java crée des objets modifiables. Ainsi, il peut être modifié.
Points intéressants
- Il étend la classe Object.
- Les interfaces implémentées de StringBuffer en Java sont Appendable, Serializable et CharSequence.
- Les méthodes de StringBuffer peuvent être synchronisées si nécessaire. Cela signifie que toutes les opérations se comportent comme si elles se produisaient dans un ordre séquentiel.
- Lorsqu'une opération se produit impliquant la séquence source, cette classe se synchronise uniquement sur le tampon de chaîne en cours d'exécution et non sur la source.
- Certaines des méthodes héritées de la classe d'objets sont equals, clone, getClass, notify, notifyAll, hashCode et finalize.
Conclusion
StringBuffer en Java crée des objets de chaîne modifiables. Ainsi, nous pouvons utiliser StringBuffer pour ajouter, remplacer, inverser, concaténer et modifier la séquence de caractères ou de chaînes. Les méthodes sous la classe StringBuffer adhèrent à ces fonctions. Pour résumer, StringBuffer en Java n'est utilisé que lorsque plusieurs threads modifient le contenu de StringBuffer. Il est plus rapide que String.
Dans cet article, nous avons appris tous les détails sur Java StringBuffer . Si vous souhaitez en savoir plus sur Java et progresser dans votre carrière technique, explorez les cours de upGrad , la plus grande société d'enseignement supérieur en ligne d'Inde.
Si vous souhaitez en savoir plus sur Java, le développement de logiciels full-stack, consultez le programme Executive PG de upGrad & IIIT-B en développement de logiciels - Spécialisation en développement Full Stack, conçu pour les professionnels en activité et offrant plus de 500 heures de formation rigoureuse. , 9+ projets et affectations, statut d'ancien de l'IIIT-B, projets de synthèse pratiques et aide à l'emploi avec les meilleures entreprises.