НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
565 of 1310 menu

Функция trimToSize

Функция trimToSize оптимизирует использование памяти объектом StringBuilder, уменьшая его емкость до длины текущей строки. Это полезно, когда после интенсивных операций с StringBuilder нужно освободить лишнюю память.

Синтаксис

fun trimToSize(): Unit

Пример

Создадим StringBuilder с начальной емкостью и проверим ее до и после вызова trimToSize:

val sb = StringBuilder(100) sb.append("abcde") println("Length: " + sb.length) println("Capacity before: " + sb.capacity()) sb.trimToSize() println("Capacity after: " + sb.capacity())

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

Length: 5 Capacity before: 100 Capacity after: 5

Пример

Продемонстрируем использование trimToSize после удаления части содержимого:

val sb = StringBuilder() sb.append("1234567890") sb.delete(5, 10) println("Capacity before: " + sb.capacity()) sb.trimToSize() println("Capacity after: " + sb.capacity()) println("Content: '" + sb.toString() + "'")

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

Capacity before: 34 Capacity after: 5 Content: '12345'

Пример

Покажем, что функция не изменяет содержимое StringBuilder, а только оптимизирует память:

val sb = StringBuilder(50) sb.append("Hello") val contentBefore = sb.toString() sb.trimToSize() val contentAfter = sb.toString() println("Content same: " + (contentBefore == contentAfter)) println("Content: '" + contentAfter + "'")

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

Content same: true Content: 'Hello'

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

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