CodeGym /Java kurs /Java Multithreading /StringBuilder og StringBuffer

StringBuilder og StringBuffer

Java Multithreading
Nivå , Lekse
Tilgjengelig

"Vi må bare dekke StringBuilder, og så tror jeg vi er ferdige."

"Som du allerede vet, er StringBuilder som String-klassen, bortsett fra at den kan endres."

"Og jeg husker også at kompilatoren genererer kode som bruker StringBuilder når vi bare legger sammen Strings."

"Ja, du har rett. For et bemerkelsesverdig minne du har. Så igjen, hver robot gjør det. Jeg glemmer det alltid."

"La oss undersøke hva du kan gjøre med StringBuilder -klassen:"

1) Jeg har en vanlig streng, og jeg vil gjøre den foranderlig. Hvordan gjør jeg det?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);

2) Jeg vil legge til et tegn til en eksisterende mutbar streng?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.append("!");

3) Og hvordan konverterer jeg en StringBuilder tilbake til en streng?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.append("!");
s = s2.toString();

4) Og hvis jeg trenger å slette et tegn?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.deleteCharAt(2); //Becomes "Beder"

5) Hvordan erstatter jeg en del av en streng med en annen?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.replace (3, 5, "_DE_"); //Becomes "Ben_DE_r"

6) Hva om jeg trenger å snu en streng?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.reverse(); //Becomes "redneB";

"Kult. Takk, Ellie, alt gir mening."

"Jeg er glad du likte det."

"Jeg vil også minne deg på noe Bilaabo burde ha fortalt deg."

"Det er en annen klasse kalt StringBuffer . Det er som StringBuilder , men metodene er erklært som synkroniserte . Dette betyr at før et kall til en av metodene sjekker Java-maskinen om objektet er opptatt; hvis det ikke er det, merker JVM det det som opptatt. Etter at du har avsluttet metoden, frigjøres objektet. Som et resultat er disse anropene tregere. Du bør ikke bruke StringBuffer med mindre du må."

"Men hvis du trenger en mutbar streng som skal brukes på tvers av flere tråder, vil du ikke finne noe bedre enn StringBuffer ."

"Takk for informasjonen. Jeg tror det kan komme godt med en dag."

Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION