В чем разница между Apache commons-lang StrBuilder и Java land StringBuilder? - PullRequest
0 голосов
/ 14 февраля 2019

Чем StrBuilder в Apache commons lang отличается от Java lang api.

В Apache commons-lang3, я вижу, StrBuilder устарел.

import org.apache.commons.lang3.text.StrBuilder;
StrBuilder sb = new StrBuilder();

или я могу вместо этого использовать Java Lang StringBuilder?

java.lang.StringBuilder
StringBuilder sb1=new StringBuilder();

1 Ответ

0 голосов
/ 03 июня 2019

Насколько я понимаю, он очень похож на дизайн Java StringBuilder, но добавляет к нему дополнительные функциональные возможности. Из JavaDoc Apache Common Lang основные различия:

  • Не синхронизировано
  • Не окончательно
  • Подклассыиметь прямой доступ к массиву символов

    Дополнительные методы

  • appendWithSeparators - добавляет массив значений, с разделителем

  • appendPadding - добавляетдлина символов
  • appendFixedLength - добавляет поле фиксированной ширины в конструктор
  • toCharArray / getChars - более простые способы получения диапазона массива символов
  • delete - удалить символ илистрока
  • replace - поиск и замена для символа или строки
  • leftString / rightString / midString - подстрока без исключений
  • содержит - содержит ли строитель символ или строку
  • size / clear / isEmpty - методы API стиля коллекций

    Views

  • asTokenizer - использует внутренний буфер в качестве источника StrTokenizer

  • asReader - использует внутренний буфер в качестве источника для Reader
  • asWriter - позволяет Writer писать напрямую во внутренний буфер

Чтобы ответить, действительно ли выМожно использовать его, StrBuilder был осужден в новых версиях в пользу org.apache.commons.text.TextStringBuilder.Это было сделано, чтобы избежать путаницы с StringBuilder.

...