- java.lang.Object
- java.lang.StringBuilder
- Все реализованные интерфейсы
Serializable,Appendable,CharSequence,Comparable<StringBuilder>
public final class StringBuilder extends Object implements Serializable, Comparable<StringBuilder>, CharSequence
Изменяемая последовательность символов. Этот класс предоставляет API, совместимый сStringBufferно не гарантирует синхронизацию. Класс предназначен какStringBufferзамена StringBuffer там, где строковый буфер используется одним потоком (обычный случай). Когда это возможно, используйте этот класс вместоStringBufferпотому что в большинстве реализаций он работает быстрее.StringBuilderОсновные операции надappend和insertМетоды перегружены, чтобы принимать данные любого типа. Каждый из них эффективно преобразует переданные данные в строку, а затем добавляет или вставляет символы этой строки в строковый конструктор.appendМетод всегда добавляет эти символы в конец конструктора.insertМетод добавляет символы в указанную позицию.Например, если
zссылается на объект строкового конструктора, текущее содержимое которого равно «start», то вызов методаz.append("le")приведёт к тому, что строковый конструктор будет содержать «startle», аz.insert(4, "le")изменит строковый конструктор так, чтобы он содержал «starlet».В общем случае, если речь идёт об экземпляре
StringBuilder,然后sb.append(x)имеет тот же эффект, что иsb.insert(sb.length(), x)。У каждого строкового конструктора есть ёмкость. Пока длина последовательности символов в строковом конструкторе не превышает ёмкость, новый внутренний буфер не выделяется. При переполнении внутреннего буфера он автоматически увеличивается.
StringBuilderЭкземпляры не подходят для использования в нескольких потоках. Если нужна такая синхронизация, используйтеStringBuffer.Если не указано иное, передача параметра
nullсо значениемnullв конструктор или методNullPointerExceptionприведёт к выбросу исключения- .
StringBuilder实现ComparableКласс реализуетequalsно не переопределяетStringBuilder. Поэтому естественный порядокStringBuilderне согласован с equals. Если объектыStringBuilderиспользуются как ключи вSortedMapили как элементыSortedSet.ComparableСм.SortedMap,SortedSetдля получения дополнительной информации. Начиная с версии: 1.5. См. также:StringBuffer,String, Serialized Form
-
-
构造方法摘要
构造方法 构造器 Описание StringBuilder()Создаёт строковый конструктор без символов с начальной ёмкостью 16 символов.StringBuilder(int capacity)Создаёт строковый конструктор без символов с начальной ёмкостью, заданной параметромcapacity.StringBuilder(CharSequence seq)Создаёт конструктор строк, который содержит те жеCharSequenceсимволы, что и указанный.StringBuilder(String str)Создаёт конструктор строк, инициализированный содержимым указанной строки.
-
方法摘要
Все методы Методы экземпляра Конкретные методы Тип и переменная Метод Описание StringBuilderappend(boolean b)Добавляет строковое представление параметраbooleanв последовательность.StringBuilderappend(char c)Добавляет строковое представление параметраcharв эту последовательность.StringBuilderappend(char[] str)ДобавляетcharСтроковое представление параметра-массива добавляется в эту последовательность.StringBuilderappend(char[] str, int offset, int len)ДобавляетcharСтроковое представление подмассива параметра-массива добавляется в эту последовательность.StringBuilderappend(double d)ДобавляетdoubleСтроковое представление параметра добавляется в эту последовательность.StringBuilderappend(float f)ДобавляетfloatСтроковое представление параметра добавляется в эту последовательность.StringBuilderappend(int i)ДобавляетintСтроковое представление параметра добавляется в эту последовательность.StringBuilderappend(long lng)ДобавляетlongСтроковое представление параметра добавляется в эту последовательность.StringBuilderappend(CharSequence s)Добавляет указанную последовательность символов в этуAppendable。StringBuilderappend(CharSequence s, int start, int end)Добавляет указаннуюCharSequenceпоследовательность в эту последовательность.StringBuilderappend(Object obj)Добавляет строковое представление параметраObjectв эту последовательность.StringBuilderappend(String str)Добавляет указанную строку в эту последовательность символов.StringBuilderappend(StringBuffer sb)Добавляет указанныйStringBuffer追加到此序列。StringBuilderappendCodePoint(int codePoint)ДобавляетcodePointстроковое представление параметра в эту последовательность.intcapacity()Возвращает текущую ёмкость.charcharAt(int index)Возвращает значение из этой последовательностиchar值。IntStreamchars()Возвращаетintпоток со значением из этой последовательностиcharс нулевым расширением.intcodePointAt(int index)Возвращает символ (кодовую точку Unicode) по указанному индексу.intcodePointBefore(int index)Возвращает символ (кодовую точку Unicode) перед указанным индексом.intcodePointCount(int beginIndex, int endIndex)Возвращает количество кодовых точек Unicode в указанном текстовом диапазоне этой последовательности.IntStreamcodePoints()Возвращает поток кодовых точек этой последовательности.intcompareTo(StringBuilder another)StringBuilderСравнивает два экземпляраStringBuilderв лексикографическом порядке.StringBuilderdelete(int start, int end)Удаляет символы из подстроки этой последовательности.StringBuilderdeleteCharAt(int index)Удаляет символ в указанной позицииchar。voidensureCapacity(int minimumCapacity)Гарантирует, что ёмкость не меньше указанного минимального значения.voidgetChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)Копирует символы из этой последовательности в целевой массив символовdst。intindexOf(String str)Возвращает индекс первого вхождения указанной подстроки в строке.intindexOf(String str, int fromIndex)Возвращает индекс первого вхождения указанной подстроки в строке, начиная с указанного индекса.StringBuilderinsert(int offset, boolean b)Вставляет строковое представление параметраbooleanв эту последовательность.StringBuilderinsert(int offset, char c)Вставляет строковое представление параметраcharв эту последовательность.StringBuilderinsert(int offset, char[] str)Вставляет строковое представление параметра массиваcharв эту последовательность.StringBuilderinsert(int index, char[] str, int offset, int len)Вставляет строковое представление подмассива параметра массиваstrв эту последовательность.StringBuilderinsert(int offset, double d)Вставляет строковое представление параметраdoubleв эту последовательность.StringBuilderinsert(int offset, float f)Вставляет строковое представление параметраfloatв эту последовательность.StringBuilderinsert(int offset, int i)Вставляет строковое представление второго параметраintв эту последовательность.StringBuilderinsert(int offset, long l)Вставляет строковое представление параметраlongв эту последовательность.StringBuilderinsert(int dstOffset, CharSequence s)Вставляет указанныйCharSequence插入此序列。StringBuilderinsert(int dstOffset, CharSequence s, int start, int end)Вставляет указанную последовательностьCharSequenceв эту последовательность.StringBuilderinsert(int offset, Object obj)Вставляет строковое представление параметраObjectв эту последовательность символов.StringBuilderinsert(int offset, String str)Вставляет строку в эту последовательность символов.intlastIndexOf(String str)Возвращает индекс последнего вхождения указанной подстроки в строке.intlastIndexOf(String str, int fromIndex)Возвращает индекс последнего вхождения указанной подстроки в строке, поиск ведётся назад от указанного индекса.intlength()Возвращает длину (количество символов).intoffsetByCodePoints(int index, int codePointOffset)Возвращает индекс в этой последовательности, смещённый от заданногоindexсмещенияcodePointOffsetКодовая точка.StringBuilderreplace(int start, int end, String str)Использует указанныйStringсимвол для замены символов в подстроке этой последовательности.StringBuilderreverse()Приводит к замене этой символьной последовательности на обратную последовательность.voidsetCharAt(int index, char ch)Символ по указанному индексу устанавливается вch。voidsetLength(int newLength)Устанавливает длину символьной последовательности.CharSequencesubSequence(int start, int end)Возвращает новую символьную последовательность, которая является подпоследовательностью данной.Stringsubstring(int start)Возвращает новуюString, содержащую подпоследовательность символов, которые в данный момент есть в этой символьной последовательности.Stringsubstring(int start, int end)Возвращает новуюString, содержащую подпоследовательность символов, которые в данный момент есть в этой последовательности.voidtrimToSize()Пытается уменьшить объём памяти, используемой символьной последовательностью.-
声明方法的类 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
声明方法的接口 java.lang.CharSequence
charAt, chars, codePoints, length, subSequence, toString
-
-
-
-
构造方法详细信息
-
StringBuilder
public StringBuilder()
Создаёт строковый конструктор, который не содержит символов и имеет начальную ёмкость 16 символов.
-
StringBuilder
public StringBuilder(int capacity)
Создаёт строковый конструктор без символов и с начальной ёмкостью,capacityуказанной параметром- Параметры
capacity- начальная ёмкость. ИсключенияNegativeArraySizeException- 如果capacityпараметр меньше0.
-
StringBuilder
public StringBuilder(String str)
Создаёт строковый конструктор, инициализированный содержимым указанной строки. Начальная ёмкость строкового конструктора равна16плюс длина строкового параметра.- Параметры
str- начальное содержимое буфера.
-
StringBuilder
public StringBuilder(CharSequence seq)
Создаёт строковый конструктор, содержащий те же символы, что и указанныйCharSequence. Начальная ёмкость строкового конструктора равна16加上CharSequence.- Параметры
seq- последовательность для копирования.
-
-
方法详细信息
-
compareTo
public int compareTo(StringBuilder another)
StringBuilderЛексикографически сравнивает дваStringBuilderэкземпляра. Этот метод следует тем же правилам лексикографического сравнения, что определены в методе CharSequence.compare(this, another). Для точного сравнения строк с учётом региональных настроек см.- Определено в:
compareTo在接口Comparable<StringBuilder>- Параметры
another— объект для сравнения с этимStringBuilder- Результат Значение
0如果此StringBuilderсодержит ту же последовательность символов, что и аргументStringBuilder; отрицательное целое число, если этаStringBuilderлексикографически меньшеStringBuilder参数,StringBuilder; положительное целое число, если этаStringBuilderлексикографически большеStringBuilder参数,StringBuilder. Начиная с версии: 11
-
append
public StringBuilder append(Object obj)
Добавляет строковое представлениеObjectаргумента. Общий эффект полностью совпадает с методомString.valueOf(Object): аргумент преобразуется в строку, затем символы этой строкиappended.- Параметры
obj-Object. Результат Ссылка на этот объект.
-
append
public StringBuilder append(String str)
Добавляет указанную строку к этой последовательности символов. СимволыStringаргумента добавляются по порядку, длина этой последовательности увеличивается на длину аргумента. Еслиstr是null, добавляются четыре символа"null"。Пусть n — длина этой последовательности символов до выполнения
appendметода. Если k меньше n, то символ с индексом k в новой последовательности равен символу с индексом k в старой последовательности; иначе он равен символу с индексом k−n в аргументеstr.- Параметры
str— строка. Результат Ссылка на этот объект.
-
append
public StringBuilder append(StringBuffer sb)
Добавляет указанныйStringBufferк этой последовательности.StringBufferСимволы аргумента добавляются к этой последовательности по порядку, длина этой последовательности увеличивается на длину аргумента. Еслиsb是null,则将四个字符"null"добавляются к этой последовательности.Пусть n — длина этой последовательности символов до выполнения
appendметода. Если k меньше n, то символ с индексом k в новой последовательности равен символу с индексом k в старой последовательности. Иначе он равен символу с индексом k-n в аргументеsb.- Аргумент
sb- 要追加的StringBuffer. Результат — ссылка на этот объект.
-
append
public StringBuilder append(CharSequence s)
Описание скопировано из интерфейса:AppendableДобавляет указанную последовательность символов в этотAppendable. В зависимости от того, какой класс реализует последовательность символовcsq, может быть добавлена не вся последовательность. Например, еслиcsq— этоCharBuffer, то добавляемая подпоследовательность определяется позицией и лимитом буфера.- Specified by:
append在接口Appendable- Аргумент
s— добавляемая последовательность символов. Еслиcsq是null, то четыре символа"null"добавляются в этот Appendable. Результат — ссылкаAppendable
-
append
public StringBuilder append(CharSequence s, int start, int end)
Добавляет указаннуюCharSequenceпоследовательность в эту последовательность. Символы аргументаstartначиная с индексаsдобавляются по порядку к содержимому этой последовательности до индекса (не включая его)end. Длина этой последовательности увеличивается на значениеend - start。Пусть n — длина этой последовательности символов до выполнения
appendметода. Тогда, если k меньше n, символ с индексом k в этой последовательности становится равным символу с индексом k в этой последовательности. Иначе он равенsс индексом k + start-n в аргументеs。Если
s是null, то этот метод добавляет символы так, как будто аргумент s является последовательностью, содержащей четыре символа"null"的序列"null"。- Specified by:
append在接口Appendable- Параметры
s- добавляемая последовательность.start- начальный индекс добавляемой подпоследовательности.end- конечный индекс добавляемой подпоследовательности. Результат Ссылка на этот объект. ИсключенияIndexOutOfBoundsException- 如果start为负数,或start大于endилиend大于s.length()
-
append
public StringBuilder append(char[] str)
Добавляетcharстроковое представление параметра-массива к этой последовательности. Символы параметра-массива добавляются по порядку к содержимому этой последовательности. Длина этой последовательности увеличивается на длину параметра.Общий эффект такой, как будто параметр преобразуется в строку методом
String.valueOf(char[])и символы этой строки затем становятся частью этойappendedпоследовательности символов.- Параметры
str- добавляемые символы. Результат Ссылка на этот объект.
-
append
public StringBuilder append(char[] str, int offset, int len)
Добавляетcharстроковое представление подмассива параметра-массива к этой последовательности. Символы массива, начиная с индексаoffset开始的char阵列str.len。Общий эффект такой, как будто параметр преобразуется в строку методом
String.valueOf(char[],int,int)и символы этой строки затем становятся частью этойappendedпоследовательности символов.- Параметры
str- добавляемые символы.offset- индекс первого добавляемогоchar.len- 要追加的char. Результат Ссылка на этот объект. ИсключенияIndexOutOfBoundsException- еслиoffset < 0илиlen < 0илиoffset+len > str.length
-
append
public StringBuilder append(boolean b)
Добавляетbooleanстроковое представление параметра к последовательности. Общий эффект такой, как будто методомString.valueOf(boolean)Преобразует аргумент в строку так же, как методappended, и символы этой строки затем становятся частью этой последовательности символов- .
b-boolean-. Результат — ссылка на этот объект.
-
append
public StringBuilder append(char c)
Добавляетcharстроковое представление аргумента к этой последовательности. Аргумент добавляется к содержимому этой последовательности. Длина последовательности увеличивается на1。Общий эффект такой, как если бы аргумент был преобразован в строку методом
String.valueOf(char), и символы этой строки затем становятся частью этой последовательности символовappended.- Specified by:
append在接口Appendable- Параметры
c- achar. Результат — ссылка на этот объект.
-
append
public StringBuilder append(int i)
Добавляетintстроковое представление аргумента к этой последовательности. Общий эффект полностью совпадает с методомString.valueOf(int), который преобразует аргумент в строку, а затем символы этой строкиappended.- Параметры
i-int. Результат — ссылка на этот объект.
-
append
public StringBuilder append(long lng)
Добавляетlongстроковое представление аргумента к этой последовательности. Общий эффект полностью совпадает с методомString.valueOf(long), который преобразует аргумент в строку, а затем символы этой строкиappended.- Параметры
lng-long. Результат — ссылка на этот объект.
-
append
public StringBuilder append(float f)
Добавляетfloatстроковое представление аргумента к этой последовательности. Общий эффект такой, как если бы аргумент был преобразован в строку методомString.valueOf(float), и символы этой строки затем становятся частью этой последовательности символовappended.- Параметры
f- afloat。 Результат — ссылка на этот объект.
-
append
public StringBuilder append(double d)
Добавляетdoubleстроковое представление аргумента в эту последовательность. Общий эффект такой, как будто аргумент преобразуется в строку методомString.valueOf(double), и затем символы этой строки добавляются в данную символьную последовательностьappended.- Параметры
d- adouble. Результат — ссылка на этот объект.
-
appendCodePoint
public StringBuilder appendCodePoint(int codePoint)
Добавляет строковое представление аргумента в эту последовательность. Аргумент добавляется к содержимому этой последовательности. Длина последовательности увеличивается наcodePoint.Character.charCount(codePoint)Общий эффект такой, как будто аргумент преобразуется методомв массив
Character.toChars(int), и символы из этого массива затем добавляютсяchar.appendedПараметры- - кодовая точка Unicode. Результат — ссылка на этот объект. Начиная с версии: 1.5
codePointdelete
-
delete
public StringBuilder delete(int start, int end)
и расширяется до символа с индексомstartили до конца последовательности, если такого символа нет. Еслиend - 1равноstart等于endПараметры- - начальный индекс, включительно.
start- конечный индекс, не включительно. Результат — этот объект. Исключенияend- еслиStringIndexOutOfBoundsException- 如果start为负数,大于length(),或大于enddeleteCharAt
-
deleteCharAt
public StringBuilder deleteCharAt(int index)
в указанной позиции этой последовательности. Последовательность укорачивается на одинchar. Примечание: если символ в заданном индексе является дополнительным символом, этот метод не удаляет весь символ. Для корректной обработки дополнительных символов определите количествоcharдля удаления, вызвавCharacter.charCount(thisSequence.codePointAt(index)), гдеchar— эта последовательность.thisSequenceПараметры- Параметры
index- индекс, который нужно удалитьchar- Результат — этот объект. Исключения
StringIndexOutOfBoundsException- 如果index为负数或大于或等于length().
-
replace
public StringBuilder replace(int start, int end, String str)
Заменяет символы в подстроке этой последовательности символами указаннойString. Подстрока начинается с указанногоstartи расширяется до символа с индексомend - 1или до конца последовательности, если такого символа нет. Сначала удаляются символы подстроки, затем вStringвставляется указаннаяstart. (При необходимости последовательность удлиняется, чтобы вместить указанную строку.)- Параметры
start- начальный индекс, включительно.end- конечный индекс, не включительно.str- строка, заменяющая прежнее содержимое. Результат — этот объект. ИсключенияStringIndexOutOfBoundsException- 如果start为负数,大于length(),或大于end.
-
insert
public StringBuilder insert(int index, char[] str, int offset, int len)
Вставляет строковое представление подмассива параметра-массиваstrв эту последовательность. Подмассив начинается с указанногоoffset开始,并扩展lencharэлементов. Символы подмассива вставляются в позицию, указаннуюindex. Длина последовательности увеличивается наlencharэлементов.- Параметр
index- позиция вставки подмассива.str-charмассив.offset- индекс первогоcharв подмассиве для вставки.len- количествоcharв подмассиве для вставки. Результат — этот объект. ИсключенияStringIndexOutOfBoundsException- 如果index为负数或大于length(),或offsetилиlen为负数,或者(offset+len)大于str.length。
-
insert
public StringBuilder insert(int offset, Object obj)
вставляетObjectстроковое представление параметра в эту последовательность символов. Общий эффект такой же, как если бы второй параметр методомString.valueOf(Object)был преобразован в строку, и символы этой строки в указанном смещении в последовательности символов равныinserted。offset参数必须大于或等于0и меньше или равен length этой последовательности.- Параметр
offset— смещение.obj-Object。 Результат — ссылка на этот объект. ИсключениеStringIndexOutOfBoundsException— если смещение недопустимо.
-
insert
public StringBuilder insert(int offset, String str)
вставляет строку в эту последовательность символов.StringСимволы параметра вставляются по порядку в эту последовательность по указанному смещению. Символы, ранее находившиеся выше этой позиции, сдвигаются вверх, а длина последовательности увеличивается на длину параметра. Еслиstr是null,则将四个字符"null"вставляются в эту последовательность.Символ новой последовательности символов с индексом k равен:
- если k меньше
offset,то символу старой последовательности символов с индексом k - Параметр
strс индексом k-offset,если k не меньшеoffset但小于offset+str.length() - символу старой последовательности символов с индексом k
-str.length(),если k не меньшеoffset+str.length()
offset参数必须大于或等于0и меньше или равен length этой последовательности.- Параметры
offset— смещение.str— строка. Результат — ссылка на этот объект. ИсключениеStringIndexOutOfBoundsException— если смещение недопустимо.
- если k меньше
-
insert
public StringBuilder insert(int offset, char[] str)
вставляетcharстроковое представление параметра-массива в эту последовательность. Символы параметра-массива вставляются в содержимое этой последовательности в позиции, указаннойoffset。 Длина последовательности увеличивается на длину параметра.Общий эффект такой же, как если бы второй параметр методом
String.valueOf(char[])Преобразование в строку, при этом символ строки в указанном смещении равен символу этой последовательностиinserted.offset参数必须大于或等于0и меньше или равен length этой последовательности.- Параметры
offset- смещение.str- массив символов. Результат — ссылка на этот объект. ИсключениеStringIndexOutOfBoundsException- если смещение недопустимо.
-
insert
public StringBuilder insert(int dstOffset, CharSequence s)
Вставляет указаннуюCharSequenceв эту последовательность.CharSequenceСимволы параметра вставляются по порядку в эту последовательность по указанному смещению. Символы, находившиеся выше этой позиции, сдвигаются вверх. Длина последовательности увеличивается на длину параметра s.Результат этого метода полностью совпадает с вызовом метода
insert(dstOffset,s,0,s.length())этого объекта.Если
s是null,则将四个字符"null".- Параметры
dstOffset- смещение.s- вставляемая последовательность. Результат — ссылка на этот объект. ИсключениеIndexOutOfBoundsException- если смещение недопустимо.
-
insert
public StringBuilder insert(int dstOffset, CharSequence s, int start, int end)
Вставляет указаннуюCharSequenceпоследовательность в эту последовательность. Подпоследовательность параметраsвставляется через указанныеstart和endв эту последовательность по указанному смещению назначения. Символы, находившиеся выше этой позиции, сдвигаются вверх. Длина последовательности увеличивается наend - start。Символ в этой последовательности по индексу k становится равным:
- если k меньше
dstOffset, то символу в этой последовательности по индексу k - Параметры
sсимволу по индексу k+start-dstOffsetв , если k больше или равенdstOffset但小于dstOffset+end-start - если k больше или равен
dstOffset+end-start, то символу в этой последовательности по индексу k-(end-start)Параметры
dstOffset参数必须大于或等于0и меньше или равно length этой последовательности.Параметр start должен быть неотрицательным и не больше
end。Параметр end должен быть больше или равен
startи меньше или равно длине s.Если
s是null, то этот метод вставляет символы, как если бы параметр s был последовательностью из четырёх символов"null"的序列"null"。- Параметры
dstOffset- Смещение в этой последовательности.s- Вставляемая последовательность.start- Начальный индекс вставляемой подпоследовательности.end- Конечный индекс вставляемой подпоследовательности. Результат Ссылка на этот объект. ИсключенияIndexOutOfBoundsException- 如果dstOffset为负数或大于this.length(),或startилиend为负数,或start大于endилиend大于s.length()
- если k меньше
-
insert
public StringBuilder insert(int offset, boolean b)
Методbooleanвставляет строковое представление параметра в эту последовательность. Эффект такой же, как при преобразовании второго параметра в строку методомString.valueOf(boolean). Символы этой строки вставляются в данную последовательность символов по указанному смещению, затем идутinserted.offset参数必须大于或等于0и меньше или равен length этой последовательности.- Параметры
offset- смещение.b- aboolean. Результат — ссылка на этот объект. ИсключенияStringIndexOutOfBoundsException- если смещение недопустимо.
-
insert
public StringBuilder insert(int offset, char c)
Вставляетcharстроковое представление аргумента в эту последовательность. Общий эффект полностью совпадает с преобразованием второго аргумента в строку методомString.valueOf(char), при этом символы этой строки попадают в данную символьную последовательность по указанному смещению, а затемinserted.offset参数必须大于或等于0нулю и меньше или равен length этой последовательности.- Параметры
offset- смещение.c- achar. Результат Ссылка на этот объект. ИсключенияIndexOutOfBoundsException- если смещение недопустимо.
-
insert
public StringBuilder insert(int offset, int i)
Вставляет строковое представление второгоintпараметра в эту последовательность. Общий эффект такой, как если бы второй параметр был преобразован в строку методомString.valueOf(int), и символы этой строки вставлены в символьную последовательность по указанному смещениюinserted.offset参数必须大于或等于0нулю и меньше или равен length этой последовательности.- Параметры
offset- смещение.i-int. Результат Ссылка на этот объект. ИсключенияStringIndexOutOfBoundsException- если смещение недопустимо.
-
insert
public StringBuilder insert(int offset, long l)
Вставляет строковое представлениеlongпараметра в эту последовательность. Общий эффект такой, как если бы второй параметр был преобразован в строку методомString.valueOf(long), и символы этой строки затем вставленыinsertedв символьную последовательность по указанному смещению.offset参数必须大于或等于0нулю и меньше или равен length этой последовательности.- Параметры
offset- смещение.l-long. Результат Ссылка на этот объект. ИсключенияStringIndexOutOfBoundsException- если смещение недопустимо.
-
insert
public StringBuilder insert(int offset, float f)
Вставляет строковое представлениеfloatпараметра в эту последовательность. Общий эффект такой же, как если бы второй параметр был преобразован в строку методомString.valueOf(float), и символы этой строки вставлены в символьную последовательность по указанному смещениюinserted.offset参数必须大于或等于0нулю и меньше или равен length этой последовательности.- Параметры
offset- смещение.f-float。 Результат — ссылка на этот объект. ИсключениеStringIndexOutOfBoundsException- если смещение недопустимо.
-
insert
public StringBuilder insert(int offset, double d)
Вставляет строковое представлениеdoubleаргумента в эту последовательность. Общий эффект полностью совпадает с преобразованием второго аргумента в строку методомString.valueOf(double), и символы этой строки вставляются в символьную последовательность по указанному смещениюinserted.offset参数必须大于或等于0и меньше или равен length этой последовательности.- Параметры
offset- смещение.d- adouble。 Результат — ссылка на этот объект. ИсключениеStringIndexOutOfBoundsException- если смещение недопустимо.
-
indexOf
public int indexOf(String str)
Возвращает индекс первого вхождения указанной подстроки в строке. Возвращаемый индекс — минимальное значениеk,其中:Если такого значенияthis.toString().startsWith(str, k)k存在,那么-1返回。- Параметры
str- искомая подстрока. Результат — индекс первого вхождения указанной подстроки, если такого вхождения нет,-1.
-
indexOf
public int indexOf(String str, int fromIndex)
Возвращает индекс первого вхождения указанной подстроки в строке, начиная с указанного индекса. Возвращаемый индекс — минимальное значениеk,其中:Если такого значенияk >= Math.min(fromIndex, this.length()) && this.toString().startsWith(str, k)k存在,那么-1返回。- Параметры
str- искомая подстрока.fromIndex- индекс, с которого начинается поиск. Результат — индекс первого вхождения указанной подстроки, начиная с указанного индекса, если такого вхождения нет,-1.
-
lastIndexOf
public int lastIndexOf(String str)
Возвращает индекс последнего вхождения указанной подстроки в строке. Последнее вхождение пустой строки "" считается по значению индексаthis.length(). Возвращаемый индекс — максимальное значениеk,其中:Если такого значенияthis.toString().startsWith(str, k)k存在,那么-1返回。- Параметры
str- Искомая подстрока. Результат Индекс последнего вхождения указанной подстроки, если такого вхождения нет,-1.
-
lastIndexOf
public int lastIndexOf(String str, int fromIndex)
Возвращает индекс последнего вхождения указанной подстроки в строке, поиск ведётся назад от указанного индекса. Возвращаемый индекс является наибольшим значениемk,其中:Если такого значенияk <= Math.min(fromIndex, this.length()) && this.toString().startsWith(str, k)k存在,那么-1返回。- Параметры
str- Искомая подстрока.fromIndex- Индекс, с которого начинается поиск. Результат Индекс последнего вхождения указанной подстроки при поиске назад от указанного индекса, если такого вхождения нет,-1.
-
reverse
public StringBuilder reverse()
Заменяет эту последовательность символов на обратную. Если последовательность содержит суррогатные пары, они рассматриваются как отдельные символы при обратной операции. Поэтому порядок старших и младших суррогатов никогда не меняется. Пусть n — длина этой последовательности символов в символах до выполненияreverseметода (не длина вcharзначении). Тогда символ с индексом k в новой последовательности символов равен символу с индексом nk-1 в старой последовательности. Обратите внимание, что обратная операция может привести к образованию суррогатных пар из ранее не спаренных младших и старших суррогатов. Например, обращение «\ uDC00 \ uD800» даёт «\ uD800 \ uDC00», что является корректной суррогатной парой.- Результат Ссылка на этот объект.
-
length
public int length()
Возвращает длину (количество символов).- Specified by:
length在接口CharSequence- Результат Длина последовательности символов, которую в данный момент представляет этот объект
-
capacity
public int capacity()
Возвращает текущую ёмкость. Ёмкость — это объём памяти, доступный для новых вставляемых символов, сверх которого выполняется выделение.- Результат Текущая ёмкость
-
ensureCapacity
public void ensureCapacity(int minimumCapacity)
Гарантирует, что ёмкость не меньше указанного минимума. Если текущая ёмкость меньше параметра, выделяется новый внутренний массив большей ёмкости. Новая ёмкость — это большее из:minimumCapacity参数。- Удвоенной старой ёмкости, плюс
2。
minimumCapacityпараметр неположительный, этот метод ничего не делает и просто возвращает. Обратите внимание, что последующие операции с этим объектом могут уменьшить фактическую ёмкость ниже запрошенной здесь.- Параметры
minimumCapacity- Требуемая минимальная ёмкость.
-
trimToSize
public void trimToSize()
Пытается уменьшить память, используемую для последовательности символов. Если буфер больше необходимого для хранения его текущей последовательности символов, его размер изменяют для более эффективного использования памяти. Вызов этого метода может, но не обязан, влиять на значение, возвращаемое последующими вызовамиcapacity()метода.
-
setLength
public void setLength(int newLength)
Устанавливает длину последовательности символов. Последовательность изменяется на новую последовательность символов, длина которой задана параметром. Для каждого неотрицательного индекса k, который меньшеnewLengthновой длины, символ в новой последовательности символов по индексу k совпадает с символом в старой последовательности по индексу k, если k меньше длины исходной последовательности символов. В противном случае это нулевой символ'\u0000'. Иными словами, еслиnewLengthпараметр меньше текущей длины, длина изменяется на указанную. ЕслиnewLengthпараметр больше или равен текущей длине, добавляется достаточное количество нулевых символов ('\u0000'), чтобы length стала равнойnewLength参数。newLength参数必须大于或等于0。- Параметры
newLength- новая длина. ИсключенияIndexOutOfBoundsException- 如果newLengthпараметр отрицательный.
-
charAt
public char charAt(int index)
Возвращает значениеcharв этой последовательности по указанному индексу. Первоеcharзначение находится по индексу0, следующее по индексу1и так далее, как в индексах массива. Параметр index должен быть больше или равен0и меньше длины этой последовательности.Если значение
charпо указанному индексу является surrogate, возвращается значение суррогата.- Specified by:
charAt在接口CharSequence- Параметры
index- индекс требуемогоcharзначения. Результат: значениеcharпо указанному индексу. ИсключенияIndexOutOfBoundsException- 如果index为负数或大于或等于length().
-
codePointAt
public int codePointAt(int index)
Возвращает символ (кодовую точку Unicode) по указанному индексу. Индекс ссылается наcharзначения (кодовые единицы Unicode) в диапазоне от0доCharSequence.length()- 1. Если значениеcharпо указанному индексу находится в диапазоне верхних суррогатов, следующий индекс меньше длины этой последовательности, а значениеcharпо следующему индексу находится в диапазоне нижних суррогатов, то возвращается дополнительная кодовая точка, соответствующая этой суррогатной паре. В противном случае возвращается значениеchar值。- Параметр
index-char值的索引- 结果
-
index处字符的代码点值 - 异常
-
IndexOutOfBoundsException- 如果indexпараметр отрицательный или не меньше длины этой последовательности.
-
codePointBefore
public int codePointBefore(int index)
Возвращает символ (кодовую точку Unicode) перед указанным индексом. Индекс ссылается наcharзначения (кодовые единицы Unicode), диапазон от1доCharSequence.length(). Еслиchar在值(index - 1)находится в нижней области видимости прокси,(index - 2)не отрицательно иchar在值(index - 2)находится в верхней суррогатной области, возвращается дополнительная кодовая точка пары суррогатов. Еслиchar在值index - 1является непарным низким агентом или высоким агентом, возвращается указанное альтернативное значение.- Параметры
index- индекс после кодовой точки, которую нужно вернуть. Результат: значение кодовой точки Unicode перед заданным индексом. ИсключенияIndexOutOfBoundsException- 如果indexПараметр меньше 1 или больше длины этой последовательности.
-
codePointCount
public int codePointCount(int beginIndex, int endIndex)Возвращает количество кодовых точек Unicode в указанном текстовом диапазоне этой последовательности. Текстовый диапазон начинается с указанногоbeginIndexи продолжается доchar在索引endIndex - 1. Поэтому длина текстового диапазона (вchars) равнаendIndex-beginIndex. Непарные суррогаты в этой последовательности считаются по одной кодовой точке каждый.- Параметры
beginIndex— первый символ текстового диапазонаcharиндекса.endIndex- Конец текстового диапазонаcharпосле указанного индекса. Результат Количество кодовых точек Unicode в заданном диапазоне текста ИсключенияIndexOutOfBoundsException- 如果beginIndex为负数,或者endIndexбольше длины этой последовательности илиbeginIndex大于endIndex.
-
offsetByCodePoints
public int offsetByCodePoints(int index, int codePointOffset)Возвращает индекс в этой последовательности, начиная с заданногоindex偏移codePointOffsetкодовых точек.index和codePointOffsetНепарные суррогаты в заданном текстовом диапазоне считаются как отдельные кодовые точки.- Параметры
index- индекс для смещенияcodePointOffset- смещение в кодовых точках. Результат: индекс в этой последовательности. ИсключенияIndexOutOfBoundsException- 如果indexотрицателен или больше длины этой последовательности, или еслиcodePointOffsetположителен и подстрока отindexсодержит менееindexкодовых точек, или еслиcodePointOffsetотрицателен и подстрока передcodePointOffsetсодержит менееindexкодовых точек, чем абсолютное значениеindex.codePointOffset.
-
getChars
public void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)Копирует символы из этой последовательности в целевой массив символовdst. Первый копируемый символ имеет индексsrcBegin; последний копируемый символ находится по индексуsrcEnd-1. Общее число копируемых символов равноsrcEnd-srcBegin. Символы копируются в подмассивdst的子dstначиная с индексаdstBeginи заканчивая индексом:dstbegin + (srcEnd-srcBegin) - 1- Параметры
srcBegin- начало копирования с этого смещения.srcEnd- остановка копирования на этом смещении.dst- массив, в который копируются данные.dstBegin- смещение вdst. ИсключенияIndexOutOfBoundsException- если выполняется любое из условий:srcBegin是否定的-
dstBegin是否定的 -
srcBeginпараметр большеsrcEnd参数。 -
srcEnd大于this.length()。 -
dstBegin+srcEnd-srcBegin大于dst.length
-
setCharAt
public void setCharAt(int index, char ch)Устанавливает символ по указанному индексу вch. Последовательность изменяется так, чтобы представлять ту же новую последовательность символов, что и старая, но она содержит символch的字符index. Параметр index должен быть больше или равен0и меньше длины этой последовательности.- Параметры
index- индекс изменяемого символа.ch- новый символ. ИсключенияIndexOutOfBoundsException- 如果index为负数或大于或等于length().
-
substring
public String substring(int start)
Возвращает новуюString, содержащую подпоследовательность символов из этой последовательности. Подстрока начинается с указанного индекса и продолжается до конца этой последовательности.- Параметры
start- начальный индекс, включается. Результат Новая строка. ИсключенияStringIndexOutOfBoundsException- 如果startменьше нуля или больше длины этого объекта.
-
subSequence
public CharSequence subSequence(int start, int end)
Возвращает новую последовательность символов, которая является подпоследовательностью данной последовательности. Форма вызова этого методаПоведение полностью совпадает с вызовомsb.subSequence(begin, end)Этот метод предоставлен, чтобы такие классы могли его реализовать.sb.substring(begin, end)CharSequenceинтерфейс.- В интерфейсе
subSequence在接口CharSequence- Параметры
start- начальный индекс, включительно.end- конечный индекс, не включается. Результат — указанная подпоследовательность. ИсключениеIndexOutOfBoundsException- 如果startилиendотрицательно, еслиend大于length(), или еслиstart大于end
-
substring
public String substring(int start, int end)
возвращает новуюString, содержащую подпоследовательность символов, которые сейчас находятся в этой последовательности. Подстрока начинается с указанногоstartи продолжается до символа с индексомend - 1.- 参数
-
start- Начальный индекс, включительно. end- Конечный индекс, не включается. Результат Новая строка. ИсключенияStringIndexOutOfBoundsException- 如果startилиend为负数或大于length(), либоstart大于end.
-
chars
public IntStream chars()
- В интерфейсе
chars在接口CharSequence- codePoints
-
codePoints
public IntStream codePoints()
значений и передаются в поток. При запуске терминальной потоковой операции поток привязывается к этой последовательности (в частности, для изменяемых последовательностей сплиттер потока является late-binding). Если последовательность изменяется во время операции, результат не определён.intSpecified by:- Specified by:
-
codePoints在接口CharSequence - Пропустить навигацию
-
-