Класс StringBuffer

Класс StringBuffer в Java является аналогом класса StringBuilder, который также представляет изменяемую последовательность символов. Однако есть одно существенное различие между ними: класс StringBuffer является потокобезопасным (синхронизированным), в то время как класс StringBuilder не синхронизирован и предназначен для использования в однопоточных сценариях.

  1. Создание объекта StringBuffer: Вы можете создать объект StringBuffer с помощью конструктора или метода append().

StringBuffer sb = new StringBuffer(); // Создание пустого объекта StringBuffer
StringBuffer sb = new StringBuffer("Hello"); // Создание объекта StringBuffer с начальным содержимым "Hello"
  1. Методы для добавления содержимого: Методы append() используются для добавления содержимого к объекту StringBuffer.

StringBuffer sb = new StringBuffer();
sb.append("Hello"); // Добавление строки "Hello"
sb.append(" ").append("world"); // Добавление строки " world"
  1. Методы для вставки содержимого: Методы insert() используются для вставки содержимого в определенное место в объекте StringBuffer.

StringBuffer sb = new StringBuffer("world");
sb.insert(0, "Hello, "); // Вставка строки "Hello, " в начало
  1. Методы для удаления содержимого: Методы delete() и deleteCharAt() используются для удаления содержимого из объекта StringBuffer.

StringBuffer sb = new StringBuffer("Hello, world");
sb.delete(5, 13); // Удаление подстроки с позиции 5 до 13 (не включительно)
sb.deleteCharAt(0); // Удаление символа на позиции 0
  1. Методы для изменения содержимого: Методы replace() и setCharAt() используются для замены или изменения символов в объекте StringBuffer.

StringBuffer sb = new StringBuffer("Hello, world");
sb.replace(0, 5, "Hi"); // Замена подстроки с позиции 0 до 5 (не включительно) на "Hi"
sb.setCharAt(7, 'W'); // Изменение символа на позиции 7 на 'W'
  1. Методы для получения содержимого: Методы toString() и charAt() используются для получения содержимого или символа из объекта StringBuffer.

StringBuffer sb = new StringBuffer("Hello, world");
String str = sb.toString(); // Получение содержимого как строки
char ch = sb.charAt(7); // Получение символа на позиции 7

Last updated