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

Метод ensureCapacity

Метод ensureCapacity класса StringBuilder проверяет текущую емкость буфера и, если она меньше переданного значения, увеличивает ее. В первый параметр мы передаем минимально необходимую емкость в символах. Метод не изменяет содержимое строки и не влияет на длину, а только резервирует место для будущих операций вставки и добавления. Если текущая емкость уже больше или равна переданному значению, ничего не происходит.

Синтаксис

sb.ensureCapacity(minimumCapacity)

Пример

Давайте создадим объект StringBuilder и увеличим его емкость до 50 символов:

public class Main { public static void main(String[] args) { StringBuilder sb = new StringBuilder("abcde"); System.out.println("Before: " + sb.capacity()); sb.ensureCapacity(50); System.out.println("After: " + sb.capacity()); System.out.println("Content: " + sb); } }

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

Before: 21 After: 50 Content: abcde

Пример

Если переданное значение меньше текущей емкости, то ничего не изменится:

public class Main { public static void main(String[] args) { StringBuilder sb = new StringBuilder("abcde"); sb.ensureCapacity(50); System.out.println("Before: " + sb.capacity()); sb.ensureCapacity(10); System.out.println("After: " + sb.capacity()); } }

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

Before: 50 After: 50

Пример

Метод ensureCapacity полезен перед массовым добавлением символов, чтобы избежать многократного перераспределения памяти:

public class Main { public static void main(String[] args) { StringBuilder sb = new StringBuilder(); sb.ensureCapacity(100); for (int i = 0; i < 5; i++) { sb.append(i); } System.out.println("Capacity: " + sb.capacity()); System.out.println("Content: " + sb); } }

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

Capacity: 100 Content: 01234

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

  • метод capacity,
    который возвращает текущую емкость буфера
  • метод append,
    который добавляет данные в конец строки
  • метод insert,
    который вставляет данные в указанную позицию
  • класс StringBuilder,
    который представляет изменяемую строку
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить