CodeGym /Java курс /Java Multithreading /StringBuilder и StringBuffer

StringBuilder и StringBuffer

Java Multithreading
Ниво , Урок
На разположение

„Трябва само да покрием StringBuilder и тогава мисля, че сме готови.“

„Както вече знаете, StringBuilder е като класа String, с изключение на това, че е променлив.“

„И също така си спомням, че компилаторът генерира code, който използва StringBuilder, когато просто добавяме низове заедно.“

"Да, прав си. Каква забележителна памет имаш. От друга страна, всеки робот го има. Винаги го забравям."

„Нека разгледаме Howво можете да правите с помощта на класа StringBuilder :“

1) Имам обикновен низ и искам да го направя променлив. Как да направя това?

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

2) Искам да добавя знак към съществуващ променлив низ?

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

3) И How да конвертирам StringBuilder обратно в String?

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

4) И ако трябва да изтрия знак?

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

5) Как да заменя част от низ с друга?

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

6) Какво ще стане, ако трябва да обърна низ?

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

„Готино. Благодаря, Ели, всичко има смисъл.“

"Радвам се, че ти харесва."

— Бих искал също така да ви напомня за нещо, което Билаабо трябваше да ви каже.

„Има друг клас, наречен StringBuffer . Той е като StringBuilder , но неговите методи са декларирани като синхронизирани . Това означава, че преди всяко извикване на някой от неговите методи Java машината проверява дали обектът е зает; ако не е, JVM го маркира като зает. След излизане от метода обектът се освобождава. В резултат на това тези извиквания са по-бавни. Не трябва да използвате StringBuffer , освен ако не се налага."

„Но ако имате нужда от променлив низ , който ще се използва в множество нишки, тогава няма да намерите нищо по-добро от StringBuffer .“

„Благодаря за информацията. Мисля, че може да е полезно някой ден.“

Коментари
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION