logo

Java StringBuffer klasa

Klasa Java StringBuffer koristi se za stvaranje promjenjivih (modificirajućih) String objekata. Klasa StringBuffer u Javi ista je kao klasa String osim što je promjenjiva, tj. može se mijenjati.

Napomena: klasa Java StringBuffer je sigurna za niti, tj. više niti joj ne može pristupiti istovremeno. Dakle, sigurno je i rezultirat će narudžbom.

Važni konstruktori klase StringBuffer

KonstruktorOpis
StringBuffer()Stvara prazan međuspremnik niza s početnim kapacitetom od 16.
StringBuffer(String str)Stvara međuspremnik niza s navedenim nizom..
StringBuffer(int kapacitet)Stvara prazan međuspremnik niza sa specificiranim kapacitetom kao duljinom.

Važne metode klase StringBuffer

Modifikator i vrstametodaOpis
javni sinkronizirani StringBufferdodati (niz s)Koristi se za dodavanje navedenog niza ovom nizu. Metoda append() je preopterećena kao append(char), append(boolean), append(int), append(float), append(double) itd.
javni sinkronizirani StringBufferumetni (int offset, String s)Koristi se za umetanje navedenog niza s ovim nizom na određenom mjestu. Metoda insert() je preopterećena kao insert(int, char), insert(int, boolean), insert(int, int), insert(int, float), insert(int, double) itd.
javni sinkronizirani StringBufferzamijeni(int startIndex, int endIndex, String str)Koristi se za zamjenu niza iz navedenog startIndex i endIndex.
javni sinkronizirani StringBufferbrisanje (int startIndex, int endIndex)Koristi se za brisanje niza iz navedenog startIndex i endIndex.
javni sinkronizirani StringBufferobrnuti ()koristi se za preokretanje niza.
javni intkapacitet()Koristi se za vraćanje trenutnog kapaciteta.
javna prazninaosiguraj kapacitet (int minimumCapacity)Koristi se kako bi se osigurao kapacitet najmanje jednak zadanom minimumu.
javni čarcharAt(int indeks)Koristi se za vraćanje znaka na navedeno mjesto.
javni intduljina ()Koristi se za vraćanje duljine niza, tj. ukupnog broja znakova.
javni nizpodniz (int početni indeks)Koristi se za vraćanje podniza iz navedenog beginIndexa.
javni nizpodniz (int beginIndex, int endIndex)Koristi se za vraćanje podniza iz navedenog beginIndex i endIndex.

Što je promjenjivi niz?

Niz koji se može modificirati ili mijenjati poznat je kao promjenjivi niz. Klase StringBuffer i StringBuilder koriste se za stvaranje promjenjivih nizova.

1) Metoda append() klase StringBuffer

Metoda append() spaja dani argument s ovim nizom.

StringBufferExample.java

 class StringBufferExample{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello '); sb.append('Java');//now original string is changed System.out.println(sb);//prints Hello Java } } 

Izlaz:

 Hello Java 

2) StringBuffer insert() metoda

Metoda insert() umeće zadani niz s ovim nizom na zadanu poziciju.

StringBufferExample2.java

 class StringBufferExample2{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello '); sb.insert(1,'Java');//now original string is changed System.out.println(sb);//prints HJavaello } } 

Izlaz:

 HJavaello 

3) StringBuffer replace() metoda

Metoda replace() zamjenjuje dani String iz navedenog beginIndex i endIndex.

StringBufferExample3.java

 class StringBufferExample3{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello'); sb.replace(1,3,'Java'); System.out.println(sb);//prints HJavalo } } 

Izlaz:

 HJavalo 

4) Metoda StringBuffer delete().

Metoda delete() klase StringBuffer briše niz od navedenog beginIndex do endIndex.

StringBufferExample4.java

 class StringBufferExample4{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello'); sb.delete(1,3); System.out.println(sb);//prints Hlo } } 

Izlaz:

 Hlo 

5) Metoda StringBuffer reverse().

Metoda reverse() klase StringBuilder preokreće trenutni niz.

StringBufferExample5.java

 class StringBufferExample5{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello'); sb.reverse(); System.out.println(sb);//prints olleH } } 

Izlaz:

 olleH 

6) Metoda kapaciteta StringBuffer()

Metoda kapaciteta() klase StringBuffer vraća trenutni kapacitet međuspremnika. Zadani kapacitet međuspremnika je 16. Ako se broj znakova poveća u odnosu na trenutni kapacitet, povećava se kapacitet za (stari kapacitet*2)+2. Na primjer, ako je vaš trenutni kapacitet 16, bit će (16*2)+2=34.

StringBufferExample6.java

 class StringBufferExample6{ public static void main(String args[]){ StringBuffer sb=new StringBuffer(); System.out.println(sb.capacity());//default 16 sb.append('Hello'); System.out.println(sb.capacity());//now 16 sb.append('java is my favourite language'); System.out.println(sb.capacity());//now (16*2)+2=34 i.e (oldcapacity*2)+2 } } 

Izlaz:

 16 16 34 

7) Metoda StringBuffer secureCapacity().

Metoda secureCapacity() klase StringBuffer osigurava da je dani kapacitet minimalni u odnosu na trenutni kapacitet. Ako je veći od trenutnog kapaciteta, povećava kapacitet za (stari kapacitet*2)+2. Na primjer, ako je vaš trenutni kapacitet 16, bit će (16*2)+2=34.

StringBufferExample7.java

 class StringBufferExample7{ public static void main(String args[]){ StringBuffer sb=new StringBuffer(); System.out.println(sb.capacity());//default 16 sb.append('Hello'); System.out.println(sb.capacity());//now 16 sb.append('java is my favourite language'); System.out.println(sb.capacity());//now (16*2)+2=34 i.e (oldcapacity*2)+2 sb.ensureCapacity(10);//now no change System.out.println(sb.capacity());//now 34 sb.ensureCapacity(50);//now (34*2)+2 System.out.println(sb.capacity());//now 70 } } 

Izlaz:

 16 16 34 34 70