Třída Java StringBuilder se používá k vytvoření proměnlivého (upravitelného) řetězce. Třída Java StringBuilder je stejná jako třída StringBuffer kromě toho, že není synchronizovaná. Je k dispozici od JDK 1.5.
Důležité konstruktory třídy StringBuilder
Konstruktér | Popis |
---|---|
StringBuilder() | Vytvoří prázdný String Builder s počáteční kapacitou 16. |
StringBuilder(String str) | Vytvoří Tvůrce řetězců se zadaným řetězcem. |
StringBuilder (délka int) | Vytvoří prázdný Tvůrce řetězců se zadanou kapacitou jako délkou. |
Důležité metody třídy StringBuilder
Metoda | Popis |
---|---|
public StringBuilder append (String s) | Slouží k připojení zadaného řetězce k tomuto řetězci. Metoda append() je přetížená jako append(char), append(boolean), append(int), append(float), append(double) atd. |
public StringBuilder insert (int offset, String s) | Slouží k vložení zadaného řetězce s tímto řetězcem na zadanou pozici. Metoda insert() je přetížená jako insert(int, char), insert(int, boolean), insert(int, int), insert(int, float), insert(int, double) atd. |
public StringBuilder nahradit(int startIndex, int endIndex, String str) | Používá se k nahrazení řetězce ze zadaného startIndex a endIndex. |
public StringBuilder delete(int startIndex, int endIndex) | Používá se k odstranění řetězce ze zadaného startIndex a endIndex. |
public StringBuilder reverse() | Slouží k obrácení struny. |
veřejná int kapacita() | Slouží k navrácení aktuální kapacity. |
public void secureCapacity(int minimumCapacity) | Slouží k zajištění kapacity alespoň rovné danému minimu. |
public char charAt(int index) | Slouží k návratu znaku na zadanou pozici. |
public int length() | Používá se k vrácení délky řetězce, tj. celkového počtu znaků. |
veřejný řetězec podřetězec (int beginIndex) | Používá se k vrácení podřetězce ze zadaného beginIndex. |
public String podřetězec(int beginIndex, int endIndex) | Používá se k vrácení podřetězce ze zadaného beginIndex a endIndex. |
Příklady Java StringBuilder
Podívejme se na příklady různých metod třídy StringBuilder.
1) Metoda append() StringBuilderu
Metoda append() StringBuilder zřetězí daný argument s tímto řetězcem.
StringBuilderExample.java
řetězcové metody v jazyce Java
class StringBuilderExample{ public static void main(String args[]){ StringBuilder sb=new StringBuilder('Hello '); sb.append('Java');//now original string is changed System.out.println(sb);//prints Hello Java } }
Výstup:
Hello Java
2) Metoda StringBuilder insert().
Metoda StringBuilder insert() vloží daný řetězec s tímto řetězcem na danou pozici.
StringBuilderExample2.java
class StringBuilderExample2{ public static void main(String args[]){ StringBuilder sb=new StringBuilder('Hello '); sb.insert(1,'Java');//now original string is changed System.out.println(sb);//prints HJavaello } }
Výstup:
řazení vložení v jazyce Java
HJavaello
3) Metoda StringBuilder replacement().
Metoda StringBuilder replace() nahradí daný řetězec ze zadaného beginIndex a endIndex.
StringBuilderExample3.java
class StringBuilderExample3{ public static void main(String args[]){ StringBuilder sb=new StringBuilder('Hello'); sb.replace(1,3,'Java'); System.out.println(sb);//prints HJavalo } }
Výstup:
převod z řetězce na int v jazyce Java
HJavalo
4) Metoda StringBuilder delete()
Metoda delete() třídy StringBuilder odstraní řetězec ze zadaného beginIndex do endIndex.
StringBuilderExample4.java
class StringBuilderExample4{ public static void main(String args[]){ StringBuilder sb=new StringBuilder('Hello'); sb.delete(1,3); System.out.println(sb);//prints Hlo } }
Výstup:
Hlo
5) Metoda StringBuilder reverse().
Metoda reverse() třídy StringBuilder obrátí aktuální řetězec.
StringBuilderExample5.java
aritmeticko logická jednotka
class StringBuilderExample5{ public static void main(String args[]){ StringBuilder sb=new StringBuilder('Hello'); sb.reverse(); System.out.println(sb);//prints olleH } }
Výstup:
olleH
6) Metoda StringBuilder capacity().
Metoda capacity() třídy StringBuilder vrací aktuální kapacitu Builderu. Výchozí kapacita Builderu je 16. Pokud se počet znaků zvýší z jeho aktuální kapacity, zvýší se kapacita o (stará kapacita*2)+2. Pokud je například vaše aktuální kapacita 16, bude to (16*2)+2=34.
StringBuilderExample6.java
class StringBuilderExample6{ public static void main(String args[]){ StringBuilder sb=new StringBuilder(); 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 } }
Výstup:
16 16 34
7) Metoda StringBuilder secureCapacity().
Metoda secureCapacity() třídy StringBuilder zajišťuje, že daná kapacita je minimální vzhledem k aktuální kapacitě. Pokud je větší než aktuální kapacita, zvýší se kapacita o (stará kapacita*2)+2. Pokud je například vaše aktuální kapacita 16, bude to (16*2)+2=34.
StringBuilderExample7.java
class StringBuilderExample7{ public static void main(String args[]){ StringBuilder sb=new StringBuilder(); 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 } }
Výstup:
16 16 34 34 70