logo

Java StringBuffer Class

Java StringBuffer -luokkaa käytetään muunnettavien (muokattavien) merkkijonoobjektien luomiseen. StringBuffer-luokka Javassa on sama kuin String-luokka, paitsi että se on muuttuva eli sitä voidaan muuttaa.

Huomautus: Java StringBuffer -luokka on säikeen turvallinen eli useat säikeet eivät voi käyttää sitä samanaikaisesti. Joten se on turvallista ja johtaa tilaukseen.

StringBuffer-luokan tärkeitä rakentajia

RakentajaKuvaus
StringBuffer()Se luo tyhjän merkkijonopuskurin, jonka alkuperäinen kapasiteetti on 16.
StringBuffer(merkkijono str)Se luo merkkijonopuskurin määritetyllä merkkijonolla.
StringBuffer (sisäinen kapasiteetti)Se luo tyhjän merkkijonopuskurin, jonka pituus on määritetty.

StringBuffer-luokan tärkeitä menetelmiä

Muokkaus ja tyyppiMenetelmäKuvaus
julkinen synkronoitu StringBufferliitä (merkkijono)Sitä käytetään liittämään määritetty merkkijono tähän merkkijonoon. Append()-metodi on ylikuormitettu, kuten append(char), append(boolean), append(int), append(float), append(double) jne.
julkinen synkronoitu StringBufferinsert(int offset, merkkijono s)Sitä käytetään lisäämään määritetty merkkijono tämän merkkijonon kanssa määritettyyn kohtaan. insert()-menetelmä on ylikuormitettu, kuten insert(int, char), insert(int, boolean), insert(int, int), insert(int, float), insert(int, double) jne.
julkinen synkronoitu StringBufferkorvaa(int aloitusindeksi, in endindex, string str)Sitä käytetään korvaamaan merkkijono määritetyistä startIndexistä ja endIndexistä.
julkinen synkronoitu StringBufferpoista(int aloitusindeksi, in loppuindeksi)Sitä käytetään merkkijonon poistamiseen määritetyistä startIndexistä ja endIndexistä.
julkinen synkronoitu StringBufferkäänteinen()käytetään kääntämään merkkijono.
julkinen intkapasiteetti ()Sitä käytetään nykyisen kapasiteetin palauttamiseen.
julkinen tyhjyysvarmista Kapasiteetti (int minimikapasiteetti)Sitä käytetään varmistamaan, että kapasiteetti on vähintään yhtä suuri kuin annettu minimi.
julkinen hahmocharAt(int index)Sitä käytetään palauttamaan merkki määritettyyn kohtaan.
julkinen intpituus()Sitä käytetään palauttamaan merkkijonon pituus eli merkkien kokonaismäärä.
julkinen merkkijonoosamerkkijono(int beginIndex)Sitä käytetään palauttamaan alimerkkijono määritetystä beginIndexistä.
julkinen merkkijonoalimerkkijono(int alkuIndeksi, int endindex)Sitä käytetään palauttamaan alimerkkijono määritetyistä beginIndex- ja endIndex-arvoista.

Mikä on muuttuva merkkijono?

Merkkijonoa, jota voidaan muokata tai muuttaa, kutsutaan muuttuvaksi merkkijonoksi. StringBuffer- ja StringBuilder-luokkia käytetään muunnettavien merkkijonojen luomiseen.

1) StringBuffer Class append() -menetelmä

Append()-metodi ketjuttaa annetun argumentin tähän merkkijonoon.

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 } } 

Lähtö:

 Hello Java 

2) StringBuffer insert() -menetelmä

Metodi insert() lisää annetun merkkijonon tämän merkkijonon kanssa annettuun kohtaan.

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 } } 

Lähtö:

 HJavaello 

3) StringBuffer korvaa() -menetelmä

Replace()-menetelmä korvaa annetun merkkijonon määritetyistä beginIndex- ja endIndex-määrityksistä.

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 } } 

Lähtö:

 HJavalo 

4) StringBuffer delete() -menetelmä

StringBuffer-luokan delete()-metodi poistaa merkkijonon määritetystä beginIndexistä endIndexiin.

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 } } 

Lähtö:

 Hlo 

5) StringBuffer reverse() -menetelmä

StringBuilder-luokan reverse()-menetelmä kääntää nykyisen merkkijonon.

StringBufferExample5.java

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

Lähtö:

 olleH 

6) StringBuffer kapasiteetti() -menetelmä

StringBuffer-luokan capacity()-menetelmä palauttaa puskurin nykyisen kapasiteetin. Puskurin oletuskapasiteetti on 16. Jos merkkien määrä kasvaa sen nykyisestä kapasiteetista, se lisää kapasiteettia (vanha kapasiteetti*2)+2. Esimerkiksi jos nykyinen kapasiteettisi on 16, se on (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 } } 

Lähtö:

 16 16 34 

7) StringBuffer varmistaaCapacity() -menetelmä

StringBuffer-luokan varmistaaCapacity()-menetelmä varmistaa, että annettu kapasiteetti on nykyisen kapasiteetin minimi. Jos se on suurempi kuin nykyinen kapasiteetti, se lisää kapasiteettia (vanha kapasiteetti*2)+2. Esimerkiksi jos nykyinen kapasiteettisi on 16, se on (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 } } 

Lähtö:

 16 16 34 34 70