Maison > Java > javaDidacticiel > le corps du texte

StringBuffer en Java

WBOY
Libérer: 2024-08-30 16:01:56
original
546 Les gens l'ont consulté

Aujourd'hui, nous allons voir String Buffer en Java. Parlons d’abord de Java. Java est un langage de programmation orienté objet. Auparavant, nous utilisions les langages C, C++. Avec ces langages, nous avions des problèmes de plateforme. Java est un langage indépendant de la plateforme. Cela signifie que Java peut fonctionner sur n'importe quel système d'exploitation comme Linux, MAC, Windows, etc. Dans cette rubrique, nous allons en apprendre davantage sur StringBuffer en Java.

Dans le monde, près de 3 milliards d’appareils fonctionnent aujourd’hui sous Java. On dirait une technologie sans fin. Et certaines des fonctionnalités sont répertoriées ci-dessous.

Commencez votre cours de développement de logiciels libres

Développement Web, langages de programmation, tests de logiciels et autres

  • Java a beaucoup de code réutilisable.
  • Un vaste ensemble de bibliothèques
  • Indépendant de la plateforme
  • Collecte automatique des déchets.
  • Sécurité
  • Grand soutien de la communauté

Avant de commencer avec la classe string Buffer, nous devons savoir comment Java fonctionne en coulisses.

Java a compilé le langage tel que nous le connaissons. Qu'est-ce que cela signifie exactement ? Nous savons tous que l'ordinateur connaît le langage sous forme binaire. c'est-à-dire des o et des 1. Nous avons besoin d'un compilateur pour comprendre le programme écrit en Java. Le compilateur Java convertit ce programme en bytecode à l'aide de la commande suivante.

Javac Someprogram.java

Cette commande crée le fichier .class. Ce fichier est en cours d'exécution sur l'ordinateur.

Maintenant, nous savons ce qui se passe exactement avec le programme Java.

Commençons maintenant par StringBuffer.

Qu'est-ce que StringBuffer en Java ?

En Java, les chaînes, une fois créées, ne peuvent pas être modifiées. Si nous voulons modifier ou attribuer une nouvelle valeur à la chaîne, ce n’est pas possible. Il crée un objet chaîne puis attribue la valeur. Ici, la classe String Buffer entre en scène. Avec l'aide de String Buffer, nous pouvons modifier la chaîne.

Qu'est-ce que la chaîne ?

Ensuite, une question évidente vous vient à l'esprit : qu'est-ce qu'une chaîne ? La chaîne est une combinaison de caractères.

Regardez l'exemple suivant.

String city = new String("Mumbai");
Copier après la connexion

Nous pouvons créer une chaîne vide comme suit :

String city = new String();
Copier après la connexion

Nous avons également des tableaux de chaînes. Regardez l'exemple suivant :

String myArray1 = new String[3];
Copier après la connexion

L'exemple ci-dessus crée un tableau de chaînes de trois constantes.

Comment fonctionne String Buffer en Java ?

Avec l'aide de StringBuffer java, les chaînes deviennent mutables.

Que signifie exactement cette mutabilité ? Regardez l'exemple suivant. Si nous réattribuons la valeur à la variable chaîne en Java, cela génère une erreur car la chaîne en Java est immuable.

public class Str {
public static void main(String args[]){
//We are creating object here of StringBuffer class
StringBuffer city = new Stringbuffer("mumbai");
//let’s try to change the value of city here
City =" Delhi"
}
}
Copier après la connexion

Le code ci-dessus récupérera une erreur car les chaînes sont immuables.

Expliquez la classe StringBuffer

La classe java.lang.StringBuffer est une classe thread-safe. Cela signifie que plusieurs threads ne peuvent pas y accéder simultanément. Il a une séquence de caractères mutable.

La classe StringBuffer est identique à une chaîne, mais elle est mutable et la chaîne est immuable. Chaque StringBuffer a une capacité de 16 caractères sans réallocation. Il permet d'ajouter des éléments à la chaîne ou à la sous-chaîne au début, au milieu ou à la fin de la chaîne. StringBuffer est une classe évolutive.

Les méthodes StringBuffer fonctionnent dans l’ordre. Nous verrons ces méthodes et comment elles fonctionnent.

Constructeur StringBuffer :

StringBuffer r = new StringBuffer();
Copier après la connexion

Cela crée un objet vide r de classe type StringBuffer.

Méthodes de la classe StringBuffer en Java (y compris des exemples)

La classe String Buffer nous fournit différentes méthodes pour surmonter ce problème.

Certaines des méthodes sont répertoriées ci-dessous.

StringBuffer Methods StvStringBuffer method use
void ensureCapacity() It sets the limit for the character.
str1.append(str2) It appends the str2 into string str1
str1.setCharAt(n, ‘x’) Modifies the nth character to x
str1.setLength(n) This length of str1 to the n characters
str1.insert(n, str2) This inserts str2 at the nth position in str1
Int capacity() This returns the total allocated capacity
Int length() It returns the current length of the object
Méthodes StringBuffer StvUtilisation de la méthode StringBuffer void EnsureCapacity() Il définit la limite du caractère. str1.append(str2) Il ajoute le str2 dans la chaîne str1 str1.setCharAt(n, 'x') Modifie le nième caractère en x str1.setLength(n) Cette longueur de str1 pour les n caractères str1.insert(n, str2) Cela insère str2 à la nième position dans str1 Capacité Int() Cela renvoie la capacité totale allouée Longueur Int() Il renvoie la longueur actuelle de l'objet

The above methods help the programmer to make the string mutable.

StringBuffer Methods in detail

Let’s look at the below program:

Save the below program with Example.java

class Example{
public static void main(String args[]){
StringBuffer abc = new StringBuffer("Hello World");
System.out.println("Welcome!!!"+ abc);
System.out.println("Total length of string is" + abc.length());
for(int i=0;i<=abc.length();i++){
int n = i+1;
System.out.println("We are using charAt function here :" + " " + n + " " + abc.charAt(i));
}
}
}
Copier après la connexion

To run the above program, open the command prompt. Go to the location where the file is saved.

Then type the following two programs:

Javac Example.java

Java Example

ensureCapacity()

ensureCapacity() is the measure of the capacity to equal the specified minimumCapacity. That means the current capacity of StringBuffer is less than the argument of minimumCapacity so that the new internal array will get allocated with greater capacity.

class Ex2{
public static void main(String[] args)
{
StringBuffer abc = new StringBuffer();
// print string capacity
System.out.println("Before ensureCapacity the value is: "
+ "method capacity = "
+ abc.capacity());
abc.ensureCapacity(20);
System.out.println("After ensureCapacity the value is: + " method capacity = "
+ abc.capacity());
}
}
Copier après la connexion

append() Method

append() method is used to append the value at the specified location.

The following example describes how we can append the string at the end of the existing string. This is one way to modify the string.

Example

class Ex2{
public static void main(String[] args)
{
StringBuffer abc = new StringBuffer("Welcome to the world ");
System.out.println("The string is:"  + abc );
abc.append("of java");
System.out.println("The string after appending is:"  + abc );
}
}
Copier après la connexion

By appending a new string into the same variable, in the end, we modified the value of the string successfully.

In java, there are several predefined functions. We cannot write all the functions in a single article. But we can practice these functions one at a time. With the StringBuffer class, there are many methods to a string also.

Conclusion

StringBuffer class is used to make string mutable. This is an added advantage for us. If you are in the learning phase of java, you should learn how to play with strings. This is the initial level to start practicing programs written in java.

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!

Étiquettes associées:
source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!