Spec-Zone.ru › OpenJDK 8

Класс StringBuilder

  • java.lang.Object
    • java.lang.StringBuilder
Все реализованные интерфейсы:
Serializable, Appendable, CharSequence

public final class StringBuilder
extends Object
implements Serializable, CharSequence

Изменяемая последовательность символов. Этот класс предоставляет API, совместимый с StringBuffer, но без гарантии синхронизации. Этот класс предназначен для использования в качестве прямого замены StringBuffer в местах, где буфер строк использовался одним потоком (как обычно). По возможности рекомендуется использовать этот класс вместо StringBuffer, так как он будет быстрее в большинстве реализаций.

Основными операциями над StringBuilder являются методы append и insert, которые перегружены для приема данных любого типа. Каждый из них фактически преобразует заданное значение в строку, а затем добавляет или вставляет символы этой строки в строковый буфер. Метод append всегда добавляет эти символы в конец буфера; метод insert добавляет символы в указанной точке.

Например, если z ссылается на объект строкового буфера, содержимое которого в настоящий момент равно "start", то вызов метода z.append("le") приведет к тому, что строковый буфер будет содержать "startle", тогда как z.insert(4, "le") изменит строковый буфер, чтобы он содержал "starlet".

В общем случае, если sb ссылается на экземпляр StringBuilder, то sb.append(x) имеет тот же эффект, что и sb.insert(sb.length(), x).

Каждый строковый буфер имеет емкость. Пока длина последовательности символов, содержащихся в строковом буфере, не превышает емкость, нет необходимости выделять новый внутренний буфер. Если внутренний буфер переполняется, он автоматически увеличивается.

Экземпляры StringBuilder не предназначены для использования в нескольких потоках. Если такая синхронизация требуется, рекомендуется использовать StringBuffer.

Если не указано иное, передача аргумента null в конструктор или метод в этом классе приведет к выбросу NullPointerException.

С:
1.5
См. также:
StringBuffer, String, Формат сериализации

Конструкторы

Конструктор и описание
StringBuilder()

Конструирует строковый буфер без символов и начальной емкостью 16 символов.

StringBuilder(CharSequence seq)

Конструирует строковый буфер, содержащий те же символы, что и указанный CharSequence.

StringBuilder(int capacity)

Конструирует строковый буфер без символов и начальной емкостью, указанной аргументом capacity.

StringBuilder(String str)

Конструирует строковый буфер, инициализированный содержимым указанной строки.

Методы

Модификатор и тип Метод и описание
StringBuilder append(boolean b)

Добавляет строковое представление аргумента boolean в последовательность.

StringBuilder append(char c)

Добавляет строковое представление аргумента char в эту последовательность.

StringBuilder append(char[] str)

Добавляет строковое представление аргумента массива char в эту последовательность.

StringBuilder append(char[] str, int offset, int len)

Добавляет строковое представление подмассива аргумента массива char в эту последовательность.

StringBuilder append(CharSequence s)

Добавляет указанную последовательность символов в эту Appendable.

StringBuilder append(CharSequence s, int start, int end)

Добавляет подпоследовательность указанного CharSequence в эту последовательность.

StringBuilder append(double d)

Добавляет строковое представление аргумента double в эту последовательность.

StringBuilder append(float f)

Добавляет строковое представление аргумента float в эту последовательность.

StringBuilder append(int i)

Добавляет строковое представление аргумента int в эту последовательность.

StringBuilder append(long lng)

Добавляет строковое представление аргумента long в эту последовательность.

StringBuilder append(Object obj)

Добавляет строковое представление аргумента Object.

StringBuilder append(String str)

Добавляет указанную строку в эту последовательность символов.

StringBuilder append(StringBuffer sb)

Добавляет указанный StringBuffer в эту последовательность.

StringBuilder appendCodePoint(int codePoint)

Добавляет строковое представление аргумента codePoint в эту последовательность.

int capacity()

Возвращает текущую емкость.

char charAt(int index)

Возвращает значение char в этой последовательности по указанному индексу.

int codePointAt(int index)

Возвращает символ (код Юникода) по указанному индексу.

int codePointBefore(int index)

Возвращает символ (код Юникода) перед указанным индексом.

int codePointCount(int beginIndex, int endIndex)

Возвращает количество символов Юникода в указанном диапазоне текста этой последовательности.

StringBuilder delete(int start, int end)

Удаляет символы в подстроке этой последовательности.

StringBuilder deleteCharAt(int index)

Удаляет char в указанной позиции в этой последовательности.

void ensureCapacity(int minimumCapacity)

Обеспечивает, что емкость не меньше указанного минимума.

void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)

Символы копируются из этой последовательности в целевой массив символов dst.

int indexOf(String str)

Возвращает индекс в этой строке первого вхождения указанной подстроки.

int indexOf(String str, int fromIndex)

Возвращает индекс в этой строке первого вхождения указанной подстроки, начиная с указанного индекса.

StringBuilder insert(int offset, boolean b)

Вставляет строковое представление аргумента boolean в эту последовательность.

StringBuilder insert(int offset, char c)

Вставляет строковое представление аргумента char в эту последовательность.

StringBuilder insert(int offset, char[] str)

Вставляет строковое представление аргумента массива char в эту последовательность.

StringBuilder insert(int index, char[] str, int offset, int len)

Вставляет строковое представление подмассива аргумента массива str в эту последовательность.

StringBuilder insert(int dstOffset, CharSequence s)

Вставляет указанный CharSequence в эту последовательность.

StringBuilder insert(int dstOffset, CharSequence s, int start, int end)

Вставляет подпоследовательность указанного CharSequence в эту последовательность.

StringBuilder insert(int offset, double d)

Вставляет строковое представление аргумента double в эту последовательность.

StringBuilder insert(int offset, float f)

Вставляет строковое представление аргумента float в эту последовательность.

StringBuilder insert(int offset, int i)

Вставляет строковое представление второго аргумента int в эту последовательность.

StringBuilder insert(int offset, long l)

Вставляет строковое представление аргумента long в эту последовательность.

StringBuilder insert(int offset, Object obj)

Вставляет строковое представление аргумента Object в эту последовательность символов.

StringBuilder insert(int offset, String str)

Вставляет строку в эту последовательность символов.

int lastIndexOf(String str)

Возвращает индекс в этой строке правого вхождения указанной подстроки.

int lastIndexOf(String str, int fromIndex)

Возвращает индекс в этой строке последнего вхождения указанной подстроки.

int length()

Возвращает длину (количество символов).

int offsetByCodePoints(int index, int codePointOffset)

Возвращает индекс в этой последовательности, смещенный от заданного index на codePointOffset символов Юникода.

StringBuilder replace(int start, int end, String str)

Заменяет символы в подстроке этой последовательности символами в указанном String.

StringBuilder reverse()

Заменяет эту последовательность символов обратной последовательностью.

void setCharAt(int index, char ch)

Символ по указанному индексу устанавливается в ch.

void setLength(int newLength)

Устанавливает длину последовательности символов.

CharSequence subSequence(int start, int end)

Возвращает новую последовательность символов, являющуюся подпоследовательностью этой последовательности.

String substring(int start)

Возвращает новый String, содержащий подпоследовательность символов, в настоящее время содержащихся в этой последовательности символов.

String substring(int start, int end)

Возвращает новый String, содержащий подпоследовательность символов, в настоящее время содержащихся в этой последовательности.

String toString()

Возвращает строку, представляющую данные в этой последовательности.

void trimToSize()

Попытка уменьшить используемое хранилище для последовательности символов.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Методы, унаследованные от интерфейса java.lang.CharSequence

charAt, chars, codePoints, length, subSequence

Конструкторы

StringBuilder

public StringBuilder()

Создаёт объект StringBuilder без символов и начальной ёмкостью 16 символов.

StringBuilder

public StringBuilder(int capacity)

Создаёт объект StringBuilder без символов и начальной ёмкостью, заданной аргументом capacity.

Параметры:
capacity - начальная ёмкость.
Исключения:
NegativeArraySizeException - если аргумент capacity меньше 0.

StringBuilder

public StringBuilder(String str)

Создаёт объект StringBuilder, инициализированный содержимым указанной строки. Начальная ёмкость StringBuilder составляет 16 плюс длина аргумента строки.

Параметры:
str - начальное содержимое буфера.

StringBuilder

public StringBuilder(CharSequence seq)

Создаёт объект StringBuilder, содержащий те же символы, что и указанная CharSequence. Начальная ёмкость StringBuilder составляет 16 плюс длина аргумента CharSequence.

Параметры:
seq - последовательность для копирования.

Методы

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 в новой последовательности символов равен символу с индексом k в старой последовательности символов, если k меньше n; в противном случае он равен символу с индексом k-n в аргументе str.

Параметры:
str - строка.
Возвращает:
ссылку на этот объект.

append

public StringBuilder append(StringBuffer sb)

Добавляет указанный объект StringBuffer к этой последовательности.

Символы аргумента StringBuffer добавляются в порядке возрастания индекса, увеличивая длину этой последовательности на длину аргумента. Если sb равно null, то добавляются четыре символа "null" в эту последовательность.

Пусть n — длина этой последовательности символов непосредственно перед выполнением метода append. Тогда символ с индексом k в новой последовательности символов равен символу с индексом k в старой последовательности символов, если k меньше n; в противном случае он равен символу с индексом k-n в аргументе sb.

Параметры:
sb - объект StringBuffer для добавления.
Возвращает:
ссылку на этот объект.

append

public StringBuilder append(CharSequence s)

Описание скопировано из интерфейса: Appendable

Добавляет указанную последовательность символов к этому Appendable.

В зависимости от класса, реализующего последовательность символов csq, вся последовательность может не быть добавлена. Например, если csq является CharBuffer, то подпоследовательность для добавления определяется позицией и пределом буфера.

Определено в:
append в интерфейсе Appendable
Параметры:
s - Последовательность символов для добавления. Если csq равно null, то добавляются четыре символа "null" к этому Appendable.
Возвращает:
Ссылка на этот Appendable

append

public StringBuilder append(CharSequence s,
                            int start,
                            int end)

Добавляет подпоследовательность указанной CharSequence к этой последовательности.

Символы аргумента s, начиная с индекса start, добавляются в порядке возрастания индекса к содержимому этой последовательности до (исключительно) индекса end. Длина этой последовательности увеличивается на значение end - start.

Пусть n — длина этой последовательности символов непосредственно перед выполнением метода append. Тогда символ с индексом k в этой последовательности символов становится равным символу с индексом k в этой последовательности, если k меньше n; в противном случае он равен символу с индексом k+start-n в аргументе s.

Если s равно null, этот метод добавляет символы так, как если бы параметр s был последовательностью, содержащей четыре символа "null".

Определено в:
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 к этой последовательности.

Символы массива char str, начиная с индекса offset, добавляются в порядке возрастания индекса к содержимому этой последовательности. Длина этой последовательности увеличивается на значение len.

Общий эффект точно такой же, как если бы аргументы были преобразованы в строку методом String.valueOf(char[],int,int), а затем символы этой строки были добавлены к этой последовательности с помощью метода appended.

Параметры:
str - символы для добавления.
offset - индекс первого символа для добавления.
len - количество символов для добавления.
Возвращает:
ссылку на этот объект.
Исключения:
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.

Определено в:
append в интерфейсе Appendable
Параметры:
c - символ char.
Возвращает:
ссылку на этот объект.

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 - float.
Возвращает:
ссылку на этот объект.

append

public StringBuilder append(double d)

Добавляет строковое представление аргумента double к этой последовательности.

Общий эффект точно такой же, как если бы аргумент был преобразован в строку методом String.valueOf(double), а затем символы этой строки были appended к этой последовательности символов.

Параметры:
d - double.
Возвращает:
ссылку на этот объект.

appendCodePoint

public StringBuilder appendCodePoint(int codePoint)

Добавляет строковое представление аргумента codePoint к этой последовательности.

Аргумент добавляется к содержимому этой последовательности. Длина этой последовательности увеличивается на Character.charCount(codePoint).

Общий эффект точно такой же, как если бы аргумент был преобразован в массив char методом Character.toChars(int), а затем символ в этом массиве был appended к этой последовательности символов.

Параметры:
codePoint - кодовая точка Unicode
Возвращает:
ссылку на этот объект.
С версии:
1.5

delete

public StringBuilder delete(int start,
                            int end)

Удаляет символы в подстроке этой последовательности. Подстрока начинается с указанного start и продолжается до символа с индексом end - 1 или до конца последовательности, если такого символа не существует. Если start равно end, изменения не вносятся.

Параметры:
start - Начальный индекс (включительно).
end - Конечный индекс (исключительно).
Возвращает:
Этот объект.
Исключения:
StringIndexOutOfBoundsException - если start отрицательно, больше length(), или больше end.

deleteCharAt

public StringBuilder deleteCharAt(int index)

Удаляет char в указанной позиции в этой последовательности. Длина этой последовательности уменьшается на один char.

Примечание: Если символ с заданным индексом является дополнительным символом, этот метод не удаляет весь символ. Если требуется правильная обработка дополнительных символов, определите количество char для удаления, вызвав Character.charCount(thisSequence.codePointAt(index)), где 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 и продолжается len chars. Символы подмассива вставляются в эту последовательность в позицию, указанную index. Длина этой последовательности увеличивается на len chars.

Параметры:
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, и меньше или равен длине этой последовательности.

Параметры:
offset - смещение.
obj - Object.
Возвращает:
ссылку на этот объект.
Исключения:
StringIndexOutOfBoundsException - если смещение неверно.

insert

public StringBuilder insert(int offset,
                            String str)

Вставляет строку в эту последовательность символов.

Символы аргумента String вставляются, по порядку, в эту последовательность в указанное смещение, перемещая любые символы, первоначально находящиеся выше этой позиции, и увеличивая длину этой последовательности на длину аргумента. Если str равно null, то четыре символа "null" вставляются в эту последовательность.

Символ с индексом k в новой последовательности символов равен:

  • символу с индексом k в старой последовательности символов, если k меньше offset
  • символу с индексом k-offset в аргументе str, если k не меньше offset, но меньше offset+str.length()
  • символу с индексом k-str.length() в старой последовательности символов, если k не меньше offset+str.length()

Аргумент offset должен быть больше или равен 0, и меньше или равен длине этой последовательности.

Параметры:
offset - смещение.
str - строка.
Возвращает:
ссылку на этот объект.
Исключения:
StringIndexOutOfBoundsException - если смещение неверно.

insert

public StringBuilder insert(int offset,
                            char[] str)

Вставляет строковое представление аргумента массива char в эту последовательность.

Символы аргумента массива вставляются в содержимое этой последовательности в позицию, указанную offset. Длина этой последовательности увеличивается на длину аргумента.

Общий эффект точно такой же, как если бы второй аргумент был преобразован в строку методом String.valueOf(char[]), а затем символы этой строки были inserted в эту последовательность символов в указанное смещение.

Аргумент offset должен быть больше или равен 0, и меньше или равен длине этой последовательности.

Параметры:
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 в этой последовательности, если k меньше dstOffset
  • символу с индексом k+start-dstOffset в аргументе s, если k больше или равно dstOffset, но меньше dstOffset+end-start
  • символу с индексом k-(end-start) в этой последовательности, если k больше или равно dstOffset+end-start

Аргумент dstOffset должен быть больше или равен 0, и меньше или равен длине этой последовательности.

Начальный аргумент должен быть неотрицательным и не должен быть больше end.

Конечный аргумент должен быть больше или равен start, и меньше или равен длине s.

Если s равен null, то этот метод вставляет символы так, как если бы параметр s был последовательностью, содержащей четыре символа "null".

Параметры:
dstOffset - смещение в этой последовательности.
s - последовательность для вставки.
start - начальный индекс подпоследовательности для вставки.
end - конечный индекс подпоследовательности для вставки.
Возвращает:
ссылку на этот объект.
Исключения:
IndexOutOfBoundsException - если dstOffset отрицателен или больше this.length(), или start или end отрицательны, или start больше end или end больше s.length()

insert

public StringBuilder insert(int offset,
                            boolean b)

Вставляет строковое представление аргумента boolean в эту последовательность.

Общий эффект точно такой же, как если бы второй аргумент был преобразован в строку методом String.valueOf(boolean), а символы этой строки затем были inserted в эту последовательность символов в указанном смещении.

Аргумент offset должен быть больше или равен 0, и меньше или равен длине этой последовательности.

Параметры:
offset - смещение.
b - boolean.
Возвращает:
ссылку на этот объект.
Исключения:
StringIndexOutOfBoundsException - если смещение неверно.

insert

public StringBuilder insert(int offset,
                            char c)

Вставляет строковое представление аргумента char в эту последовательность.

Общий эффект точно такой же, как если бы второй аргумент был преобразован в строку методом String.valueOf(char), а символ этой строки затем был inserted в эту последовательность символов в указанном смещении.

Аргумент offset должен быть больше или равен 0, и меньше или равен длине этой последовательности.

Параметры:
offset - смещение.
c - char.
Возвращает:
ссылку на этот объект.
Исключения:
IndexOutOfBoundsException - если смещение неверно.

insert

public StringBuilder insert(int offset,
                            int i)

Вставляет строковое представление второго аргумента int в эту последовательность.

Общий эффект точно такой же, как если бы второй аргумент был преобразован в строку методом String.valueOf(int), а символы этой строки затем были inserted в эту последовательность символов в указанном смещении.

Аргумент offset должен быть больше или равен 0, и меньше или равен длине этой последовательности.

Параметры:
offset - смещение.
i - int.
Возвращает:
ссылку на этот объект.
Исключения:
StringIndexOutOfBoundsException - если смещение неверно.

insert

public StringBuilder insert(int offset,
                            long l)

Вставляет строковое представление аргумента long в эту последовательность.

Общий эффект точно такой же, как если бы второй аргумент был преобразован в строку методом String.valueOf(long), а символы этой строки затем были inserted в эту последовательность символов в указанном смещении.

Аргумент offset должен быть больше или равен 0, и меньше или равен длине этой последовательности.

Параметры:
offset - смещение.
l - long.
Возвращает:
ссылку на этот объект.
Исключения:
StringIndexOutOfBoundsException - если смещение неверно.

insert

public StringBuilder insert(int offset,
                            float f)

Вставляет строковое представление аргумента float в эту последовательность.

Общий эффект точно такой же, как если бы второй аргумент был преобразован в строку методом String.valueOf(float), а символы этой строки затем были inserted в эту последовательность символов в указанном смещении.

Аргумент offset должен быть больше или равен 0, и меньше или равен длине этой последовательности.

Параметры:
offset - смещение.
f - float.
Возвращает:
ссылку на этот объект.
Исключения:
StringIndexOutOfBoundsException - если смещение неверно.

insert

public StringBuilder insert(int offset,
                            double d)

Вставляет строковое представление аргумента double в эту последовательность.

Общий эффект точно такой же, как если бы второй аргумент был преобразован в строку методом String.valueOf(double), а символы этой строки затем были inserted в эту последовательность символов в указанном смещении.

Аргумент offset должен быть больше или равен 0, и меньше или равен длине этой последовательности.

Параметры:
offset - смещение.
d - double.
Возвращает:
ссылку на этот объект.
Исключения:
StringIndexOutOfBoundsException - если смещение неверно.

indexOf

public int indexOf(String str)

Возвращает индекс в этой строке первого вхождения указанной подстроки. Возвращаемое целое число — это наименьшее значение k такое, что:

this.toString().startsWith(str, <i>k</i>)
есть true.

Параметры:
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 - индекс, с которого следует начать поиск.
Возвращает:
индекс в этой строке первого вхождения указанной подстроки, начиная с указанного индекса.

lastIndexOf

public int lastIndexOf(String str)

Возвращает индекс в этой строке самого правого вхождения указанной подстроки. Самая правая пустая строка "" считается встречающейся с индексным значением this.length(). Возвращаемый индекс — это наибольшее значение k такое, что

this.toString().startsWith(str, k)
истинно.

Параметры:
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 - индекс, с которого следует начать поиск.
Возвращает:
индекс в этой последовательности последнего вхождения указанной подстроки.

reverse

public StringBuilder reverse()

Приводит к замене этой последовательности символов на обратную последовательность. Если в последовательности есть парные суррогаты, они обрабатываются как отдельные символы для операции обратного порядка. Таким образом, порядок высоких и низких суррогатов никогда не меняется. Пусть n — длина этой последовательности символов (не длина в char значениях) непосредственно перед выполнением метода reverse. Тогда символ с индексом k в новой последовательности символов равен символу с индексом n-k-1 в старой последовательности символов.

Обратите внимание, что операция обратного порядка может привести к созданию пар суррогатов, которые были непарными низкими и высокими суррогатами до операции. Например, обращение "\uDC00\uD800" даёт "\uD800\uDC00", что является допустимой парой суррогатов.

Возвращает:
ссылку на этот объект.

toString

public String toString()

Возвращает строку, представляющую данные в этой последовательности. Новый объект String выделяется и инициализируется последовательностью символов, в данный момент представленной этим объектом. Затем этот String возвращается. Последующие изменения в этой последовательности не влияют на содержимое String.

Определено в:
toString в интерфейсе CharSequence
Возвращает:
строковое представление этой последовательности символов.

length

public int length()

Возвращает длину (количество символов).

Определено в:
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') для того, чтобы длина стала равной аргументу newLength.

Аргумент newLength должен быть больше или равен 0.

Параметры:
newLength - новая длина
Исключения:
IndexOutOfBoundsException - если аргумент newLength отрицательный.

charAt

public char charAt(int index)

Возвращает значение char в этой последовательности по указанному индексу. Первый char элемент находится по индексу 0, следующий — по индексу 1, и так далее, как при индексировании массива.

Аргумент индекса должен быть больше или равен 0, и меньше длины этой последовательности.

Если значение char, заданное индексом, является суррогатом, возвращается значение суррогата.

Определено в:
charAt в интерфейсе CharSequence
Параметры:
index - индекс нужного значения char.
Возвращает:
значение char по указанному индексу.
Исключения:
IndexOutOfBoundsException - если index отрицательный или больше или равен length().

codePointAt

public int codePointAt(int index)

Возвращает символ (код Юникода) по указанному индексу. Индекс относится к значениям char (единицам Юникода) и находится в диапазоне от 0 до length()- 1.

Если значение char по указанному индексу находится в диапазоне высоких суррогатов, следующий индекс меньше длины этой последовательности, и значение char по следующему индексу находится в диапазоне низких суррогатов, то возвращается дополнительный код, соответствующий этой паре суррогатов. В противном случае возвращается значение char по указанному индексу.

Параметры:
index - индекс значения char
Возвращает:
значение кода символа по указанному index
Исключения:
IndexOutOfBoundsException - если аргумент index отрицательный или не меньше длины этой последовательности.

codePointBefore

public int codePointBefore(int index)

Возвращает символ (код Юникода) перед указанным индексом. Индекс относится к значениям char (единицам Юникода) и находится в диапазоне от 1 до length().

Если значение char по (index - 1) находится в диапазоне низких суррогатов, (index - 2) не отрицателен, и значение char по (index - 2) находится в диапазоне высоких суррогатов, то возвращается дополнительное значение кода пары суррогатов. Если значение char по index - 1 является непарным низким суррогатом или высоким суррогатом, возвращается значение суррогата.

Параметры:
index - индекс, следующий за символом, который должен быть возвращён
Возвращает:
значение кода Юникода перед заданным индексом.
Исключения:
IndexOutOfBoundsException - если аргумент index меньше 1 или больше длины этой последовательности.

codePointCount

public int codePointCount(int beginIndex,
                          int endIndex)

Возвращает количество кодов Юникода в указанном диапазоне текста этой последовательности. Диапазон текста начинается с указанного beginIndex и продолжается до char по индексу endIndex - 1. Таким образом, длина (в chars) диапазона текста равна endIndex-beginIndex. Непарные суррогаты в этой последовательности считаются по одному коду Юникода.

Параметры:
beginIndex - индекс первого char диапазона текста.
endIndex - индекс после последнего char диапазона текста.
Возвращает:
количество кодов Юникода в указанном диапазоне текста
Исключения:
IndexOutOfBoundsException - если beginIndex отрицательный, или endIndex больше длины этой последовательности, или beginIndex больше endIndex.

offsetByCodePoints

public int offsetByCodePoints(int index,
                              int codePointOffset)

Возвращает индекс в этой последовательности, который смещён от заданного index на codePointOffset кодов Юникода. Непарные суррогаты в диапазоне текста, заданном index и codePointOffset, считаются по одному коду Юникода.

Параметры:
index - индекс, который нужно сместить
codePointOffset - смещение в кодах Юникода
Возвращает:
индекс в этой последовательности
Исключения:
IndexOutOfBoundsException - если index отрицательный или больше длины этой последовательности, или если codePointOffset положительно, и подпоследовательность, начинающаяся с index, имеет меньше чем codePointOffset кодов Юникода, или если codePointOffset отрицательно, и подпоследовательность перед index имеет меньше чем абсолютное значение codePointOffset кодов Юникода.

getChars

public void getChars(int srcBegin,
                     int srcEnd,
                     char[] dst,
                     int dstBegin)

Символы копируются из этой последовательности в целевой массив символов dst. Первый копируемый символ имеет индекс srcBegin; последний копируемый символ имеет индекс srcEnd-1. Общее количество копируемых символов равно srcEnd-srcBegin. Символы копируются в подмассив 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.

Аргумент индекса должен быть больше или равен 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,&nbsp;end)
ведет себя точно так же, как вызов
sb.substring(begin,&nbsp;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.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API