logo

Clasa StringBuilder în Java cu exemple

StringBuilder în Java reprezintă o secvență mutabilă de caractere. Deoarece Clasa String în Java creează o secvență imuabilă de caractere, clasa StringBuilder oferă o alternativă la Clasa String, deoarece creează o secvență mutabilă de caractere. Funcția StringBuilder este foarte asemănătoare cu clasa StringBuffer, deoarece ambele oferă o alternativă la String Class prin realizarea unei secvențe mutabile de caractere. Cu toate acestea, clasa StringBuilder diferă de clasa StringBuffer pe baza sincronizării. Clasa StringBuilder nu oferă nicio garanție de sincronizare, în timp ce clasa StringBuffer o face. Prin urmare, această clasă este concepută pentru a fi utilizată ca înlocuitor pentru StringBuffer în locurile în care StringBuffer a fost folosit de un singur fir (cum este în general cazul). Acolo unde este posibil, se recomandă ca această clasă să fie folosită de preferință StringBuffer, deoarece va fi mai rapidă în majoritatea implementărilor. Instanțele StringBuilder nu sunt sigure pentru utilizare de mai multe fire. Dacă este necesară o astfel de sincronizare, atunci se recomandă utilizarea StringBuffer. String Builder nu este sigur pentru fire și are o performanță ridicată în comparație cu tamponul String.

pyspark

Ierarhia claselor este următoarea:

java.lang.Object ↳ java.lang ↳ Class StringBuilder>

Sintaxă:



public final class StringBuilder extends Object implements Serializable, CharSequence>

Constructori în Clasa Java StringBuilder

    StringBuilder(): Construiește un generator de șiruri fără caractere și o capacitate inițială de 16 caractere. StringBuilder(int capacity): Construiește un generator de șiruri fără caractere și o capacitate inițială specificată de argumentul de capacitate. StringBuilder(CharSequence seq): Construiește un generator de șiruri care conține aceleași caractere ca și CharSequence specificat. StringBuilder(String str): Construiește un generator de șiruri inițializat la conținutul șirului specificat.

Mai jos este un exemplu de program pentru a ilustra StringBuilder în Java.

Java




// Java Code to illustrate StringBuilder> import> java.util.*;> import> java.util.concurrent.LinkedBlockingQueue;> public> class> GFG1 {> >public> static> void> main(String[] argv)>throws> Exception> >{> >// Create a StringBuilder object> >// using StringBuilder() constructor> >StringBuilder str =>new> StringBuilder();> >str.append(>'GFG'>);> >// print string> >System.out.println(>'String = '> + str.toString());> >// create a StringBuilder object> >// using StringBuilder(CharSequence) constructor> >StringBuilder str1> >=>new> StringBuilder(>'AAAABBBCCCC'>);> >// print string> >System.out.println(>'String1 = '> + str1.toString());> >// create a StringBuilder object> >// using StringBuilder(capacity) constructor> >StringBuilder str2 =>new> StringBuilder(>10>);> >// print string> >System.out.println(>'String2 capacity = '> >+ str2.capacity());> >// create a StringBuilder object> >// using StringBuilder(String) constructor> >StringBuilder str3> >=>new> StringBuilder(str1.toString());> >// print string> >System.out.println(>'String3 = '> + str3.toString());> >}> }>

>

>

Ieșire

String = GFG String1 = AAAABBBCCCC String2 capacity = 10 String3 = AAAABBBCCCC>

Metode în Java StringBuilder

StringBuilder append(X x) : Această metodă adaugă la secvență reprezentarea șir a argumentului de tip X.

  1. StringBuilder appendCodePoint(int codePoint) : Această metodă adaugă reprezentarea șir a argumentului codePoint la această secvență.
  2. capacitate int() : Această metodă returnează capacitatea curentă.
  3. char charAt(index int) : Această metodă returnează valoarea char din această secvență la indexul specificat.
  4. IntStream chars() : Această metodă returnează un flux de int zero extinzând valorile char din această secvență.
  5. int codePointAt(index int) : Această metodă returnează caracterul (punct de cod Unicode) la indexul specificat.
  6. int codePointBefore(index int) : Această metodă returnează caracterul (punct de cod Unicode) înainte de indexul specificat.
  7. int codePointCount(int beginIndex, int endIndex) : Această metodă returnează numărul de puncte de cod Unicode din intervalul de text specificat al acestei secvențe.
  8. IntStream codePoints() : Această metodă returnează un flux de valori ale punctelor de cod din această secvență.
  9. StringBuilder delete (int start, int end) : Această metodă elimină caracterele dintr-un subșir al acestei secvențe.
  10. StringBuilder deleteCharAt(int index) : Această metodă elimină caracterul din poziția specificată în această secvență.
  11. void assureCapacity(int minimumCapacity) : Această metodă asigură că capacitatea este cel puțin egală cu minimul specificat.
  12. void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) : Caracterele acestei metode sunt copiate din această secvență în matricea de caractere destinație dst.
  13. int indexOf() : Această metodă returnează indexul din acest șir al primei apariții a subșirului specificat.
  14. StringBuilder insert(int offset, boolean b): Această metodă inserează reprezentarea șir a argumentului boolean alternativ în această secvență. StringBuilder insert() : Această metodă inserează reprezentarea șir a argumentului char în această secvență.
  15. int lastIndexOf() : Această metodă returnează indexul din acest șir al ultimei apariții a subșirului specificat.
  16. lungime int() : Această metodă returnează lungimea (numărul de caractere).
  17. int offsetByCodePoints(int index, int codePointOffset) : Această metodă returnează indexul din această secvență care este compensat de indexul dat prin puncte de cod codePointOffset.
  18. StringBuilder replace(int start, int end, String str) : Această metodă înlocuiește caracterele dintr-un subșir al acestei secvențe cu caractere din șirul specificat.
  19. StringBuilder invers () : Această metodă face ca această secvență de caractere să fie înlocuită cu inversul secvenței.
  20. void setCharAt(index int, char ch) : În această metodă, caracterul de la indexul specificat este setat la ch.
  21. void setLength(int newLength) : Această metodă stabilește lungimea secvenței de caractere.
  22. CharSequence subSequence (int start, int end) : Această metodă returnează o nouă secvență de caractere care este o subsecvență a acestei secvențe.
  23. șir subșir() : Această metodă returnează un String nou care conține o subsecvență de caractere conținute în prezent în această secvență de caractere.
  24. String toString() : Această metodă returnează un șir reprezentând datele din această secvență.
  25. void trimToSize() : Această metodă încearcă să reducă spațiul de stocare utilizat pentru secvența de caractere.

Exemplu:

Java

model de design singleton java


care este 25 din 100



// Java code to illustrate> // methods of StringBuilder> import> java.util.*;> import> java.util.concurrent.LinkedBlockingQueue;> public> class> GFG1 {> >public> static> void> main(String[] argv)> >throws> Exception> >{> >// create a StringBuilder object> >// with a String pass as parameter> >StringBuilder str> >=>new> StringBuilder(>'AAAABBBCCCC'>);> >// print string> >System.out.println(>'String = '> >+ str.toString());> >// reverse the string> >StringBuilder reverseStr = str.reverse();> >// print string> >System.out.println(>'Reverse String = '> >+ reverseStr.toString());> >// Append ', '(44) to the String> >str.appendCodePoint(>44>);> >// Print the modified String> >System.out.println(>'Modified StringBuilder = '> >+ str);> >// get capacity> >int> capacity = str.capacity();> >// print the result> >System.out.println(>'StringBuilder = '> + str);> >System.out.println(>'Capacity of StringBuilder = '> >+ capacity);> >}> }>

>

>

Ieșire

String = AAAABBBCCCC Reverse String = CCCCBBBAAAA Modified StringBuilder = CCCCBBBAAAA, StringBuilder = CCCCBBBAAAA, Capacity of StringBuilder = 27>

StringBuilder este o altă clasă din Java care este folosită pentru a manipula șiruri. La fel ca StringBuffer, este o clasă mutabilă care vă permite să modificați conținutul șirului pe care îl reprezintă. Cu toate acestea, StringBuilder nu este sigur pentru fire, așa că nu ar trebui să fie utilizat într-un mediu cu mai multe fire.

Iată câteva exemple despre cum să utilizați StringBuilder în Java:

Java




public> class> StringBuilderExample {> >public> static> void> main(String[] args) {> >StringBuilder sb =>new> StringBuilder();> >sb.append(>'Hello'>);> >sb.append(>' '>);> >sb.append(>'world!'>);> >System.out.println(sb.toString());>// Output: 'Hello world!'> > >sb.insert(>6>,>'beautiful '>);> >System.out.println(sb.toString());>// Output: 'Hello beautiful world!'> > >sb.reverse();> >System.out.println(sb.toString());>// Output: '!dlrow lufituaeb olleH'> >}> }>

>

șir ca o matrice

>

Ieșire

Hello world! Hello beautiful world! !dlrow lufituaeb olleH>