В чем разница между Apache commons-lang StrBuilder и Java land StringBuilder?
Чем 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();
0 ответов
Насколько я понимаю, он очень похож на дизайн Java StringBuilder, но добавляет к нему дополнительные функциональные возможности. Основными отличиями от JavaDoc от Apache Common Lang являются:
- Не синхронизировано
- Не окончательный
Подклассы имеют прямой доступ к массиву символов
Дополнительные методы
appendWithSeparators - добавляет массив значений с разделителем
- appendPadding - добавляет длину отступа символов
- appendFixedLength - добавляет поле фиксированной ширины в конструктор
- toCharArray / getChars - более простые способы получить диапазон массива символов
- удалить - удалить символ или строку
- заменить - поиск и замена для символа или строки
- leftString / rightString / midString - подстрока без исключений
- содержит - содержит ли строитель символ или строку
size / clear / isEmpty - методы API стиля коллекций
Просмотры
asTokenizer - использует внутренний буфер в качестве источника StrTokenizer
- asReader - использует внутренний буфер в качестве источника Reader
- asWriter - позволяет Writer писать прямо во внутренний буфер
Чтобы ответить, можете ли вы использовать его или нет, StrBuilder в новых версиях был извращен в пользу org.apache.commons.text.TextStringBuilder. Это было сделано, чтобы избежать путаницы с StringBuilder.