StringBuffer în Java: 11 metode populare pe care fiecare dezvoltator Java ar trebui să le cunoască

Publicat: 2021-05-26

Cuprins

Introducere în StringBuffer în Java

StringBuffer în java este o clasă care moștenește metode din clasa java.lang.Object. Este o clasă peer de String care este folosită pentru a crea șir modificabil sau mutabil. Oferă o mare parte din funcționalitatea lui String, cu excepția faptului că poate fi schimbată, adică reprezintă secvențe de caractere care pot fi scrise și care pot fi crescute în loc de secvențe de caractere imuabile și cu lungime fixă. Iată câteva puncte esențiale despre java.lang.StringBuffer în Java:

· Conținutul și lungimea secvenței de caractere pot fi modificate prin diferite apeluri de metodă.

· Este sigur pentru fire, adică sigur pentru utilizare de mai multe fire

· Fiecare StringBuffer din Java are o capacitate.

· Subșirurile și caracterele pot fi adăugate la sfârșit sau inserate în mijloc. Crește automat și face loc pentru adăugiri. Adesea, sunt prealocate mai multe caractere decât este necesar pentru a permite spațiu de creștere.

Iată cum este declarat StringBuffer din clasa Java:

clasa finală publică StringBuffer

extinde Obiectul

implementează Serializable, CharSequence

Constructorii clasei StringBuffer

1. StringBuffer() – Acesta este folosit pentru a construi un buffer de șir cu o capacitate inițială de 16 caractere și fără caractere în el. Sintaxă:

StringBuffer a =new StringBuffer();

2. StringBuffer (CharSequence seq) – Acesta este folosit pentru a construi un buffer de șir care conține aceleași caractere ca și în CharSequence.

3. StringBuffer (capacitate int) – Acesta este folosit pentru a crea un buffer de șir a cărui capacitate inițială este specificată și fără caractere. Sintaxă:

StringBuffer a=new StringBuffer(10);

4. StringBuffer (String str) – Acesta este folosit pentru a crea un buffer de șir cu conținutul String dat. Sintaxă:

StringBuffer a=new StringBuffer(„stringbuffer în java”);

Citiți: Diferența dintre String Buffers și String Builders

11 Metode populare

1) StringBuffer în metoda Java Append().

.append() este folosit pentru a concatena șirul și argumentul dat. Iată un exemplu:

import java.io.*;

buffer de clasă publică {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(„stringbuffer”);

a.append(„în Java”);

System.out.println(a);

a.apend(0);

System.out.println(a);

}

}

Ieșire:

2) StringBuffer în metoda Java Insert().

Metoda .insert() este folosită pentru a insera un șir dat cu șirul principal în poziția specificată. Iată un exemplu:

import java.io.*;

buffer de clasă publică {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(„stringbuffer”);

a.inserat(5, „pentru”);

System.out.println(a);

a.inserare(0, 5);

System.out.println(a);

a.insert(3, false);

System.out.println(a);

a.inserare(5, 41,55d);

System.out.println(a);

a.inserare(8, 41,55f);

System.out.println(a);

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

a.insert(2, arr);

System.out.println(a);

} }

Ieșire:

Citiți și: Idei și subiecte de proiecte Java

3) StringBuffer în metoda java replace().

.replace() este folosit pentru a înlocui o parte din șir așa cum este specificat în interval (beginIndex, endIndex). Iată un exemplu:

import java.io.*;

buffer de clasă publică {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(„stringbuffer”);

a.înlocuiește(5, 8, „sunt”);

System.out.println(a);

}

}

Ieșire:

4) StringBuffer în metoda Java Delete().

.delete() este folosit pentru a șterge șirul așa cum este specificat în interval (beginIndex, endIndex).

.deleteCharAt() este folosit pentru a șterge caracterul de la un anumit index. Această metodă returnează obiectul stringbuffer rezultat. Iată un exemplu:

import java.io.*;

buffer de clasă publică {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(„buffer de șir în java”);

a.delete(0, 6);

System.out.println(a);

a.deleteCharAt(7);

System.out.println(a);

}

}

Ieșire:

5) StringBuffer în metoda Java Reverse().

.reverse() după cum sugerează și numele este folosit pentru a inversa șirul dat. Iată un exemplu:

import java.io.*;

buffer de clasă publică {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(„stringbuffer”);

a.reverse();

System.out.println(a);

}

}

Ieșire:

6) StringBuffer în metoda Java Capacity().

.capacity() din StringBuffer din clasa java este folosit pentru a returna capacitatea curentă a bufferului. 16 este capacitatea implicită. Capacitatea crește prin creșterea numărului de caractere. Noua capacitate = (capacitate veche*2)+2. adică, dacă capacitatea actuală este 16, noua capacitate va fi 32+2=34.

.length este folosit pentru a găsi lungimea unui StringBuffer în java. De exemplu:

import java.io.*;

buffer de clasă publică {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(„stringbuffer”);

int p = a.lungime();

int q = a.capacitate();

System.out.println(„Lungimea șirului este =” + p);

System.out.println(„Capacitatea șirului este =” + q);

}

}

Ieșire:

Obțineți diplome online de Inginerie software de la cele mai bune universități din lume. Câștigă programe Executive PG, programe avansate de certificat sau programe de master pentru a-ți accelera cariera.

7) StringBuffer în metoda Java assureCapacity().

.ensureCapacity() din clasa stringbuffer este utilizat pentru a se asigura că capacitatea specificată este minimă față de capacitatea curentă. Dacă capacitatea dată este mai mare decât capacitatea actuală, noua capacitate devine (capacitate veche*2)+2. adică capacitatea devine 34 dacă vechea capacitate este 16. De exemplu:

tampon de clasă publică{

public static void main(Argumente șir[]){

StringBuffer a=nou StringBuffer();

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

a.append(„Bună ziua”);

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

a.append(„java”);

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

a.ensureCapacity(10);

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

a.ensureCapacity(50);

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

}

}

Ieșire:

Checkout: Salariu de dezvoltator Java în India

8. charAt(index int) – Această metodă este folosită pentru a returna caracterul la indexul dat.

9. substring( int begIndex) – Această metodă este folosită pentru a returna subșirul unui șir dat pornind de la beginIndex.

10. substring(int beginIndex, int endIndex) – Această metodă este folosită pentru a returna subșirul dat, începând de la beginIndex și se termină la endIndex.

11. void trimToSize() – Această metodă este folosită pentru a reduce spațiul de stocare pentru secvența de caractere

Diferența dintre String și StringBuffer în Java

Folosim acest exemplu pentru a crea obiecte din clasa StringBuffer și String și pentru a le modifica. Vedem că obiectul StringBuffer este modificat, în timp ce String nu. Vezi exemplul de mai jos:

buffer de clasă publică {

public static void main(Argumente șir[])

{

String str = „șir”;

str.concat(„buffer”);

System.out.println(str);

StringBuffer strB = new StringBuffer(„șir”);

strB.append(„buffer”);

System.out.println(strB);

}

}

Ieșire:

Explicație: Ieșirea este astfel deoarece șirurile sunt imuabile. Dacă încercăm să concatenăm obiectul șir, acesta nu va fi modificat. Cu toate acestea, un StringBuffer în java creează obiecte mutabile. Astfel, acesta poate fi modificat.

Puncte interesante

  1. Extinde clasa Object.
  2. Interfețele implementate ale StringBuffer în java sunt Appendable, Serializable și CharSequence.
  3. Metodele StringBuffer pot fi sincronizate oriunde este necesar. Aceasta înseamnă că toate operațiunile se comportă ca și cum ar avea loc într-o ordine în serie.
  4. Când are loc o operație care implică secvența sursă, această clasă se sincronizează numai pe buffer-ul de șir care funcționează și nu pe sursă.
  5. Unele dintre metodele moștenite de la clasa de obiecte sunt equals, clone, getClass, notify, notifyAll, hashCode și finalize.

Concluzie

StringBuffer în java creează obiecte șir modificabile. Astfel, putem folosi StringBuffer pentru a adăuga, înlocui, inversa, concatena și modifica secvența de caractere sau șiruri. Metodele din clasa StringBuffer aderă la aceste funcții. Pentru a rezuma, StringBuffer în java este folosit numai atunci când mai multe fire modifică conținutul StringBuffer. Este mai rapid decât String.

În acest articol, am aflat fiecare detaliu despre Java StringBuffer . Dacă doriți să aflați mai multe despre java și să vă avansați în cariera tehnică, explorați cursurile upGrad - cea mai mare companie de învățământ superior online din India.

Dacă sunteți interesat să aflați mai multe despre Java, dezvoltarea de software full-stack, consultați programul Executive PG în dezvoltare software de la upGrad și IIIT-B – Specializare în dezvoltare full-stack, care este conceput pentru profesioniști care lucrează și oferă peste 500 de ore de formare riguroasă. , peste 9 proiecte și sarcini, statutul de absolvenți IIIT-B, proiecte practice practice și asistență pentru locuri de muncă cu firme de top.

Aterizează la locul de muncă visat

Aplicați pentru certificarea upGrad PG legată de locuri de muncă în inginerie software