РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
227 of 1163 menu

Класс StringBuffer

Класс StringBuffer представляет собой изменяемую последовательность символов. В отличие от класса String, объекты которого неизменяемы, содержимое StringBuffer можно изменять после создания: добавлять, удалять, вставлять и заменять символы. Класс является потокобезопасным (synchronized), поэтому его методы можно безопасно вызывать из нескольких потоков одновременно.

Для создания объекта используется конструктор, который может принимать пустое значение, начальную строку или начальную емкость буфера. Основные методы: append добавляет данные в конец буфера, insert вставляет данные по указанной позиции, delete удаляет символы в заданном диапазоне, replace заменяет часть содержимого, reverse переворачивает последовательность, toString возвращает обычную строку.

Синтаксис

StringBuffer sb = new StringBuffer(); StringBuffer sb = new StringBuffer("abcde"); StringBuffer sb = new StringBuffer(50);

Пример

Давайте создадим буфер и добавим в него несколько фрагментов с помощью метода append:

public class Main { public static void main(String[] args) { StringBuffer sb = new StringBuffer("abc"); sb.append("de"); sb.append("12345"); System.out.println(sb.toString()); } }

Результат выполнения кода:

"abcde12345"

Пример

Давайте вставим подстроку в середину буфера с помощью метода insert:

public class Main { public static void main(String[] args) { StringBuffer sb = new StringBuffer("abcde"); sb.insert(2, "12345"); System.out.println(sb.toString()); } }

Результат выполнения кода:

"ab12345cde"

Пример

Давайте удалим символы со 1 по 3 (конечный индекс не входит в удаляемый диапазон) с помощью метода delete:

public class Main { public static void main(String[] args) { StringBuffer sb = new StringBuffer("abcde"); sb.delete(1, 4); System.out.println(sb.toString()); } }

Результат выполнения кода:

"ae"

Пример

Давайте заменим символы со 1 по 3 на новую строку с помощью метода replace:

public class Main { public static void main(String[] args) { StringBuffer sb = new StringBuffer("abcde"); sb.replace(1, 4, "12345"); System.out.println(sb.toString()); } }

Результат выполнения кода:

"a12345e"

Пример

Давайте перевернем последовательность символов с помощью метода reverse:

public class Main { public static void main(String[] args) { StringBuffer sb = new StringBuffer("abcde"); sb.reverse(); System.out.println(sb.toString()); } }

Результат выполнения кода:

"edcba"

Смотрите также

  • класс String,
    который представляет неизменяемую строку
  • метод length,
    который возвращает длину строки
  • метод concat,
    который объединяет строки
  • метод substring,
    который вырезает подстроку
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить