Clasa StringBuffer

public final class StringBuffer
extends Object
implements Serializable

Un StringBuffer implementeaza un sir de caractere care poate fi modificat. El reprezinta o zona tampon din memorie, in care se ppoate plasa un sir de caractere.

Operatiile principale asupra unui StringBuffer sunt metodele append si insert. Fiecare din ele converteste o data intr-un String, pe care apoi il adauga la sirul din StringBuffer sau il insereaza in acesta pe o pozitie data.

Fiecare StringBuffer are o capacitate si o lungime. Lungimea este numarul efectiv de caractere continute, iar capacitatea este numarul maxim de caractere care incap in zona tampon rezervata in memorie. Daca, printr-o noua adaugare de caractere, lungimea depaseste capacitatea, atunci capacitatea se mareste in mod automat.
 

Constructori:

public StringBuffer() - construieste un StringBuffer vid cu capacitatea 16 caractere.

public StringBuffer(int length)- construieste un StringBuffer vid de lungime length. Daca length este negativ, se genereaza o NegativeArraySizeException.

public StringBuffer(String str)- construieste un StringBuffer care contine sirul str, iar capacitatea este lungimea lui str plus 16.

Metode:

public int length()- intoarce lungimea sirului continut in StringBuffer (numarul de caractere).

public int capacity()- intoarce capacitatea curenta a zonei tampon.

public void ensureCapacity(int minimumCapacity)- asigura capacitatea minima a zonei tampon. Daca capacitatea curenta este mai mica decat minimumCapacity, se aloca in memorie o noua zona tampon  si se transfera in ea sirul curent. Capacitatea noului StringBuffer este cea mai mare dintre valoarea argumentului minimumCapacity si dublul vechii capacitati.

public void setLength(int newLength)- seteaza noua lungime a acestui StringBuffer. Daca noua lungime newLength este mai mica decat cea existenta, sirul este trunchiat. Daca newLength este mai mare decat cea curenta, se adauga un numar suficient de caractere nule (\0000) pentru a se obtine noua lungime. Daca argumentul newLength este negativ se genereaza o exceptie IndexOutOfBoundsException.

public char charAt(int index)- intoarce caracterul de pe pozitia de indice index. Daca indicele nu se incadreaza in lungimea sirului curent, se genereaza o IndexOutOfBoundsException.

public void getChars(int srcBegin,
                     int srcEnd,
                     char[] dst,
                     int dstBegin)
 Caracterele situate in StringBuffer intre pozitiile srcBegin si srcEnd-1 sunt copiate in tabloul de caractere dst incepand de la pozitia dstBegin. Daca dst este null se genereaza o NullPointerException. Daca srcBegin, srcEnd sau dstBegin nu sunt corecte, se genereaza o IndexOutOfBondsException.

public void setCharAt(int index, char ch)- se pune caracterul ch pe pozitia index. Daca index este incorect, se genereaza o IndexOutOfBoundsException.

public StringBuffer append(Object obj)- se adauga obiectul obj convertit in sir.

public StringBuffer append(String str)- se adauga sirul str.

public StringBuffer append(char[] str)- se adauga toate caracterele continute in tabloul str.

public StringBuffer append(char[] str, int offset, int len)- se adauga la acest StringBuffer len caractere din tabloul str, incepand de la pozitia offset din acest tablou.

public StringBuffer append(boolean b)- se adauga valoarea booleana b convertita in sir.

public StringBuffer append(char c)- se adauga caracterul c.

public StringBuffer append(int i)- se adauga intregul i convertit in sir.

public StringBuffer append(long l)- se adauga numarul intreg llung l convertit in sir.

public StringBuffer append(float f)- se adauga numarul real f convertit in sir.

public StringBuffer append(double d)- se adauga numarul real d convertit in sir.

public StringBuffer delete(int start, int end)- se elimina caracterele de pe pozitiile de la indicele start pana la end-1. Daca start este negativ, mai mare ca lungimea sau mai mare ca end se genereaza o StringIndexOutOfBoundsException.

public StringBuffer deleteCharAt(int index)- se elimina caracterul de pe pozitia index sau se genereaza o StringIndexOutOfBoundsException.

public StringBuffer replace(int start, int end, String str)- caracterele situate in StringBuffer pe pozitiile de la start la end-1 se inlocuiesc prin subsirul str. Daca indicii start sau end nu sunt corecti se genereaza o StringIndexOutOfBoundsException.

public String substring(int start)- intoarce subsirul care incepe de la pozitia start sau genereaza o StringIndexOutOfBoundsException.

public String substring(int start, int end)- intoarce subsirul de la pozitia start la pozitia end-1 sau genereaza o StringIndexOutOfBoundsException.

public StringBuffer insert(int index,
                           char[] str,
                           int offset,
                           int len)
Incepand de la pozitia index insereaza in StringBuffer len caractere situate in tabloul str de la pozitia offset sau se genereaza o StringIndexOutOfBoundsException.

public StringBuffer insert(int offset, Object obj)- insereaza incepand de la pozitia offset obiectul obj reprezentat ca sir. Daca offset nu este corect se genereaza o StringingIndexOutOfBoundsException.

public StringBuffer insert(int offset, String str)- se insereaza incepand de la pozitia offset sirul str. Daca offset este incorect se genereaza o StringIndexOutOfBoundsException.

public StringBuffer insert(int offset, char[] str)- incepand de la pozitia offset se insereaza caracterele din tabloul str. Daca offset este incorect se genereaza o StringIndexOutOfBoundsException.

public StringBuffer insert(int offset, boolean b)- se insereaza incepand de la pozitia offset valoarea booleana b convertita in sir, sau se genereaza o StringIndexOutOfBoundsException.

public StringBuffer insert(int offset, char c)- pe pozitia offset se insereaza caracterul c sau se genereaza o StringIndexOutOfBoundsException.

public StringBuffer insert(int offset, int i)- incepand de la pozitia offset se insereaza numarul intreg i convertit in sir sau se genereaza o StringIndexOutOfBoundsException.

public StringBuffer insert(int offset, long l)- incepand de la pozitia offset se insereaza numarul intreg lung l convertit in sir, sau se genereaza o StringIndexOutOfBoundsException.

public StringBuffer insert(int offset, float f)- incepand de la pozitia offset se insereaza numarul real f convertit in sir sau se genereaza o StringIndexOutOfBoundsException.

public StringBuffer insert(int offset, double d)- incepand de la pozitia offset se insereaza numarul real f convertit in sir sau se genereaza o StringIndexOutOfBoundsException.

public StringBuffer reverse()- se pun caracterele din StringBuffer in ordine inversa celei actuale.

public String toString()- intoarce un String care are acelasi continut cu acest StringBuffer.

--------------------------------------------------------------------------------

Metode mostenite de la clasa Object:

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait