StringBuffer in Java: 11 metodi popolari che ogni sviluppatore Java dovrebbe conoscere

Pubblicato: 2021-05-26

Sommario

Introduzione a StringBuffer in Java

StringBuffer in java è una classe che eredita i metodi dalla classe java.lang.Object. È una classe peer di String che viene utilizzata per creare String modificabili o mutabili. Fornisce gran parte delle funzionalità di String tranne per il fatto che può essere modificato, cioè rappresenta sequenze di caratteri scrivibili e espandibili invece di sequenze di caratteri immutabili e di lunghezza fissa. Ecco alcuni punti essenziali su java.lang.StringBuffer in Java:

· Il contenuto e la lunghezza della sequenza di caratteri possono essere modificati tramite varie chiamate di metodo.

· È thread-safe, cioè sicuro per l'uso da parte di più thread

· Ogni StringBuffer in Java ha una capacità.

· Le sottostringhe ei caratteri possono essere aggiunti alla fine o inseriti al centro. Cresce automaticamente e fa spazio alle aggiunte. Spesso vengono preallocati più personaggi del necessario per lasciare spazio alla crescita.

Ecco come viene dichiarato StringBuffer nella classe Java:

classe finale pubblica StringBuffer

estende l'Oggetto

implementa Serializable, CharSequence

Costruttori della classe StringBuffer

1. StringBuffer() – Viene utilizzato per costruire un buffer di stringhe con una capacità iniziale di 16 caratteri e nessun carattere al suo interno. Sintassi:

StringBuffer a =nuovo StringBuffer();

2. StringBuffer (CharSequence seq) – Viene utilizzato per costruire un buffer di stringhe che contiene gli stessi caratteri di CharSequence.

3. StringBuffer (int capacity) – Viene utilizzato per creare un buffer di stringhe la cui capacità iniziale è specificata e senza caratteri. Sintassi:

StringBuffer a=nuovo StringBuffer(10);

4. StringBuffer (String str) – Viene utilizzato per creare un buffer di stringhe con il contenuto String specificato. Sintassi:

StringBuffer a=new StringBuffer(“stringbuffer in java”);

Leggi: Differenza tra buffer di stringhe e generatori di stringhe

11 metodi popolari

1) StringBuffer nel metodo Java Append()

.append() viene utilizzato per concatenare la stringa e l'argomento dati. Ecco un esempio:

importa java.io.*;

buffer di classe pubblica {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(“stringbuffer”);

a.append("in Java");

System.out.println(a);

a.append(0);

System.out.println(a);

}

}

Produzione:

2) StringBuffer nel metodo Java Insert()

Il metodo .insert() viene utilizzato per inserire una determinata stringa con la stringa principale nella posizione specificata. Ecco un esempio:

importa java.io.*;

buffer di classe pubblica {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(“stringbuffer”);

a.inserto(5, “per”);

System.out.println(a);

a.insert(0, 5);

System.out.println(a);

a.insert(3, false);

System.out.println(a);

a.inserto(5, 41.55d);

System.out.println(a);

a.inserto(8, 41.55f);

System.out.println(a);

char arr[] = { 'j', 'a', 'v', 'a' };

a.insert(2, arr);

System.out.println(a);

} }

Produzione:

Leggi anche: Idee e argomenti del progetto Java

3) StringBuffer nel metodo java replace()

.replace() viene utilizzato per sostituire una parte di stringa come specificato nell'intervallo (beginIndex, endIndex). Ecco un esempio:

importa java.io.*;

buffer di classe pubblica {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(“stringbuffer”);

a.sostituire(5, 8, “sono”);

System.out.println(a);

}

}

Produzione:

4) StringBuffer nel metodo Java Delete()

.delete() viene utilizzato per eliminare la stringa come specificato nell'intervallo (beginIndex, endIndex).

.deleteCharAt() viene utilizzato per eliminare il carattere in un indice specifico. Questo metodo restituisce l'oggetto stringbuffer risultante. Ecco un esempio:

importa java.io.*;

buffer di classe pubblica {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(“string buffer in java”);

a.cancella(0, 6);

System.out.println(a);

a.deleteCharAt(7);

System.out.println(a);

}

}

Produzione:

5) StringBuffer nel metodo Java Reverse()

.reverse() come suggerisce il nome viene utilizzato per invertire la stringa data. Ecco un esempio:

importa java.io.*;

buffer di classe pubblica {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(“stringbuffer”);

a.reverse();

System.out.println(a);

}

}

Produzione:

6) StringBuffer nel metodo Java Capacity()

.capacity() di StringBuffer nella classe java viene utilizzato per restituire la capacità corrente del buffer. 16 è la capacità predefinita. La capacità aumenta aumentando il numero di caratteri. La nuova capacità = (vecchia capacità*2)+2. cioè, se la capacità attuale è 16, la nuova capacità sarà 32+2=34.

.length viene utilizzato per trovare la lunghezza di un StringBuffer in Java. Per esempio:

importa java.io.*;

buffer di classe pubblica {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(“stringbuffer”);

int p = a.lunghezza();

int q = a.capacity();

System.out.println(“Lunghezza della stringa è=” + p);

System.out.println(“La capacità della stringa è=” + q);

}

}

Produzione:

Ottieni lauree in Ingegneria del Software online dalle migliori università del mondo. Guadagna programmi Executive PG, programmi di certificazione avanzati o programmi di master per accelerare la tua carriera.

7) StringBuffer nel metodo Java sureCapacity()

.ensureCapacity() della classe stringbuffer viene utilizzato per garantire che la capacità specificata sia la minima rispetto alla capacità corrente. Se la capacità data è maggiore della capacità attuale, la nuova capacità diventa (vecchia capacità*2)+2. cioè la capacità diventa 34 se oldcapacity è 16. Ad esempio:

buffer di classe pubblica{

public static void main(String args[]){

StringBuffer a=nuovo StringBuffer();

System.out.println(a.capacity());

a.append("Ciao");

System.out.println(a.capacity());

a.append(“Java”);

System.out.println(a.capacity());

a.assicurareCapacità(10);

System.out.println(a.capacity());

a.assicurareCapacità(50);

System.out.println(a.capacity());

}

}

Produzione:

Checkout: Stipendio per sviluppatori Java in India

8. charAt(int index) – Questo metodo viene utilizzato per restituire il carattere all'indice specificato.

9. substring( int begIndex) – Questo metodo viene utilizzato per restituire la sottostringa di una determinata stringa a partire da beginIndex.

10. substring(int beginIndex, int endIndex) – Questo metodo viene utilizzato per restituire la sottostringa di String data che inizia con beginIndex e termina con endIndex.

11. void trimToSize() – Questo metodo viene utilizzato per ridurre lo spazio di archiviazione per la sequenza di caratteri

Differenza tra String e StringBuffer in Java

Usiamo questo esempio per creare oggetti della classe StringBuffer e String e modificarli. Vediamo che l'oggetto StringBuffer viene modificato, mentre String no. Vedi l'esempio qui sotto:

buffer di classe pubblica {

public static void main(String args[])

{

Stringa str = “stringa”;

str.concat(“buffer”);

System.out.println(str);

StringBuffer strB = new StringBuffer(“stringa”);

strB.append("buffer");

System.out.println(strB);

}

}

Produzione:

Spiegazione: L'output è tale perché le stringhe non sono modificabili. Se proviamo a concatenare l'oggetto stringa, non verrà alterato. Tuttavia, uno StringBuffer in Java crea oggetti mutabili. Pertanto, può essere modificato.

Punti interessanti

  1. Estende la classe Object.
  2. Le interfacce implementate di StringBuffer in Java sono Appendable, Serializable e CharSequence.
  3. I metodi di StringBuffer possono essere sincronizzati dove necessario. Ciò significa che tutte le operazioni si comportano come se si verificassero in un ordine seriale.
  4. Quando si verifica un'operazione che coinvolge la sequenza di origine, questa classe si sincronizza solo sul buffer di stringa operativo e non sull'origine.
  5. Alcuni dei metodi ereditati dalla classe di oggetti sono equals, clone, getClass, notification, notificationAll, hashCode e finalize.

Conclusione

StringBuffer in Java crea oggetti stringa modificabili. Pertanto, possiamo utilizzare StringBuffer per aggiungere, sostituire, invertire, concatenare e modificare la sequenza di caratteri o stringhe. I metodi della classe StringBuffer aderiscono a queste funzioni. Per riassumere, StringBuffer in java viene utilizzato solo quando più thread stanno modificando il contenuto di StringBuffer. È più veloce di String.

In questo articolo, abbiamo appreso ogni dettaglio su Java StringBuffer . Se stai cercando di saperne di più su Java e salire nella tua carriera tecnica, esplora i corsi di upGrad , la più grande azienda di istruzione superiore online dell'India.

Se sei interessato a saperne di più su Java, lo sviluppo di software full-stack, dai un'occhiata al programma Executive PG di upGrad & IIIT-B in Software Development - Specializzazione in Full Stack Development, progettato per i professionisti che lavorano e offre oltre 500 ore di formazione rigorosa , oltre 9 progetti e incarichi, stato di Alumni IIIT-B, progetti pratici pratici e assistenza sul lavoro con le migliori aziende.

Atterra sul lavoro dei tuoi sogni

Richiedi la certificazione PG collegata al lavoro di upGrad in ingegneria del software