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
Rakentaja | Kuvaus |
---|---|
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 tyyppi | Menetelmä | Kuvaus |
---|---|---|
julkinen synkronoitu StringBuffer | liitä (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 StringBuffer | insert(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 StringBuffer | korvaa(int aloitusindeksi, in endindex, string str) | Sitä käytetään korvaamaan merkkijono määritetyistä startIndexistä ja endIndexistä. |
julkinen synkronoitu StringBuffer | poista(int aloitusindeksi, in loppuindeksi) | Sitä käytetään merkkijonon poistamiseen määritetyistä startIndexistä ja endIndexistä. |
julkinen synkronoitu StringBuffer | käänteinen() | käytetään kääntämään merkkijono. |
julkinen int | kapasiteetti () | Sitä käytetään nykyisen kapasiteetin palauttamiseen. |
julkinen tyhjyys | varmista Kapasiteetti (int minimikapasiteetti) | Sitä käytetään varmistamaan, että kapasiteetti on vähintään yhtä suuri kuin annettu minimi. |
julkinen hahmo | charAt(int index) | Sitä käytetään palauttamaan merkki määritettyyn kohtaan. |
julkinen int | pituus() | Sitä käytetään palauttamaan merkkijonon pituus eli merkkien kokonaismäärä. |
julkinen merkkijono | osamerkkijono(int beginIndex) | Sitä käytetään palauttamaan alimerkkijono määritetystä beginIndexistä. |
julkinen merkkijono | alimerkkijono(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