Класс String
- Все реализованные интерфейсы:
-
Serializable,CharSequence,Comparable<String>,Constable,ConstantDesc
public final class String extends Object implements Serializable, Comparable<String>, CharSequence, Constable, ConstantDesc
String представляет строковые значения. Все строковые литералы в программах Java, такие как "abc", реализуются как экземпляры этого класса. Строки являются константами; их значения нельзя изменить после их создания. Для изменяемых строк используются буферы строк. Так как объекты String неизменяемы, они могут быть совместно использованы. Например:
String str = "abc";
эквивалентно:
char data[] = {'a', 'b', 'c'};
String str = new String(data);
Вот несколько примеров использования строк:
System.out.println("abc");
String cde = "cde";
System.out.println("abc" + cde);
String c = "abc".substring(2, 3);
String d = cde.substring(1, 2);
Класс String включает методы для проверки отдельных символов последовательности, сравнения строк, поиска в строках, извлечения подстрок и создания копии строки со всеми символами, преобразованными в верхний или нижний регистр. Преобразование регистра основано на версии стандарта Unicode, указанной классом Character.
Язык Java предоставляет специальную поддержку оператора конкатенации строк ( + ) и преобразования других объектов в строки. Дополнительную информацию о конкатенации строк и преобразовании см. в Спецификации языка Java.
Если не указано иное, передача null аргумента конструктору или методу в этом классе приведет к выбрасыванию исключения NullPointerException.
Строка представляет строку в формате UTF-16, в котором дополнительные символы представлены парами суррогатов (см. раздел Представления символов Unicode в классе Character для получения дополнительной информации). Значения индексов относятся к единицам кода, поэтому дополнительный символ занимает две позиции в String.
Класс String предоставляет методы для работы с кодовыми точками Unicode (т.е. символами) в дополнение к методам для работы с единицами кода Unicode (т.е. значениями char).
Если не указано иное, методы сравнения строк не учитывают языковые настройки. Класс Collator предоставляет методы для более точного сравнения строк с учетом языковых настроек.
- Примечание о реализации:
- Реализация оператора конкатенации строк остается на усмотрение компилятора Java, при условии, что компилятор в конечном итоге соответствует Спецификации языка Java. Например, компилятор
javacможет реализовать оператор с помощьюStringBuffer,StringBuilder, илиjava.lang.invoke.StringConcatFactoryв зависимости от версии JDK. Реализация преобразования строк обычно осуществляется через методtoString, определенныйObjectи унаследованный всеми классами в Java. - См. Спецификацию языка Java:
- 15.18.1 Оператор конкатенации строк +
- С:
- 1.0
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final Comparator |
CASE_INSENSITIVE_ORDER |
Компаратор, который упорядочивает объекты String так же, как и compareToIgnoreCase. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
String() |
Инициализирует новый объект String, чтобы он представлял пустую последовательность символов. |
String |
Создает новый объект String, декодируя указанный массив байтов с использованием default charset. |
String |
Устарело. Этот метод не правильно преобразует байты в символы. |
String |
Создает новый объект String, декодируя указанный подмассив байтов с использованием default charset. |
String |
Устарело. Этот метод не правильно преобразует байты в символы. |
String |
Создает новый объект String, декодируя указанный подмассив байтов с использованием указанного набора символов. |
String |
Создает новый объект String, декодируя указанный подмассив байтов с использованием указанного набора символов. |
String |
Создает новый объект String, декодируя указанный массив байтов с использованием указанного набора символов. |
String |
Создает новый объект String, декодируя указанный массив байтов с использованием указанного набора символов. |
String |
Выделяет новый объект String, чтобы он представлял последовательность символов, в настоящее время содержащихся в массиве символов-аргументе. |
String |
Выделяет новый объект String, содержащий символы из подмассива массива символов-аргумента. |
String |
Выделяет новый объект String, содержащий символы из подмассива массива кодовых точек Unicode-аргумента. |
String |
Инициализирует новый объект String так, чтобы он представлял ту же последовательность символов, что и аргумент; другими словами, новая строка является копией строкового аргумента. |
String |
Выделяет новую строку, содержащую последовательность символов, в настоящее время содержащуюся в буфере строк-аргументе. |
String |
Выделяет новую строку, содержащую последовательность символов, в настоящее время содержащуюся в буфере строк-аргументе. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
char |
charAt |
Возвращает значение char по указанному индексу. |
IntStream |
chars() |
Возвращает поток int с нулевым расширением значений char из этой последовательности. |
int |
codePointAt |
Возвращает символ (код Юникода) по указанному индексу. |
int |
codePointBefore |
Возвращает символ (код Юникода) перед указанным индексом. |
int |
codePointCount |
Возвращает количество символов Юникода в указанном текстовом диапазоне этой String. |
IntStream |
codePoints() |
Возвращает поток значений кодов символов из этой последовательности. |
int |
compareTo |
Сравнивает две строки лексикографически. |
int |
compareToIgnoreCase |
Сравнивает две строки лексикографически, игнорируя различия в регистре. |
String |
concat |
Добавляет указанную строку в конец этой строки. |
boolean |
contains |
Возвращает true, если и только если эта строка содержит указанную последовательность значений char. |
boolean |
contentEquals |
Сравнивает эту строку с указанным CharSequence. |
boolean |
contentEquals |
Сравнивает эту строку с указанным StringBuffer. |
static String |
copyValueOf |
Эквивалентно valueOf(char[]). |
static String |
copyValueOf |
Эквивалентно valueOf(char[], int, int). |
Optional |
describeConstable() |
Возвращает Optional, содержащий номинальный дескриптор для этого экземпляра, который является самим экземпляром. |
boolean |
endsWith |
Проверяет, заканчивается ли эта строка указанным суффиксом. |
boolean |
equals |
Сравнивает эту строку с указанным объектом. |
boolean |
equalsIgnoreCase |
Сравнивает эту String с другой String, игнорируя различия в регистре. |
static String |
format |
Возвращает отформатированную строку, используя указанную строку формата и аргументы. |
static String |
format |
Возвращает отформатированную строку, используя указанный локали, строку формата и аргументы. |
String |
formatted |
Форматирует, используя эту строку в качестве строки формата и предоставленные аргументы. |
byte[] |
getBytes() |
Кодирует эту String в последовательность байтов, используя default charset, сохраняя результат в новый массив байтов. |
void |
getBytes |
Устарело. Этот метод не корректно преобразует символы в байты. |
byte[] |
getBytes |
Кодирует эту String в последовательность байтов, используя указанную кодировку, сохраняя результат в новый массив байтов. |
byte[] |
getBytes |
Кодирует эту String в последовательность байтов, используя заданную кодировку, сохраняя результат в новый массив байтов. |
void |
getChars |
Копирует символы из этой строки в целевой массив символов. |
int |
hashCode() |
Возвращает хэш-код для этой строки. |
String |
indent |
Изменяет отступ каждой строки этой строки, основываясь на значении n, и нормализует символы окончания строки. |
int |
indexOf |
Возвращает индекс в этой строке первой встречи указанного символа. |
int |
indexOf |
Возвращает индекс в этой строке первой встречи указанного символа, начиная поиск с указанного индекса. |
int |
indexOf |
Возвращает индекс в этой строке первой встречи указанного символа, начиная поиск с beginIndex и останавливаясь перед endIndex. |
int |
indexOf |
Возвращает индекс в этой строке первой встречи указанной подстроки. |
int |
indexOf |
Возвращает индекс в этой строке первой встречи указанной подстроки, начиная с указанного индекса. |
int |
indexOf |
Возвращает индекс первой встречи указанной подстроки в указанном диапазоне индексов строки this. |
String |
intern() |
Возвращает каноническое представление для объекта строки. |
boolean |
isBlank() |
Возвращает true, если строка пуста или содержит только пробельные символы, в противном случае false. |
boolean |
isEmpty() |
|
static String |
join |
Возвращает новую строку, состоящую из копий CharSequence elements, соединенных с копией указанного delimiter. |
static String |
join |
Возвращает новую String, составленную из копий CharSequence elements, соединенных копией указанного delimiter. |
int |
lastIndexOf |
Возвращает индекс в этой строке последней встречи указанного символа. |
int |
lastIndexOf |
Возвращает индекс в этой строке последней встречи указанного символа, выполняя поиск назад, начиная с указанного индекса. |
int |
lastIndexOf |
Возвращает индекс в этой строке последней встречи указанной подстроки. |
int |
lastIndexOf |
Возвращает индекс в этой строке последней встречи указанной подстроки, выполняя поиск назад, начиная с указанного индекса. |
int |
length() |
Возвращает длину этой строки. |
Stream |
lines() |
Возвращает поток строк, извлеченных из этой строки, разделенных символами конца строки. |
boolean |
matches |
Указывает, соответствует ли эта строка заданному регулярному выражению. |
int |
offsetByCodePoints |
Возвращает индекс в этой String который смещен от заданного index на codePointOffset символов. |
boolean |
regionMatches |
Проверяет, равны ли два фрагмента строк. |
boolean |
regionMatches |
Проверяет, равны ли два фрагмента строк. |
String |
repeat |
Возвращает строку, значение которой представляет собой конкатенацию этой строки, повторенной count раз. |
String |
replace |
Возвращает строку, полученную заменой всех вхождений oldChar в этой строке на newChar. |
String |
replace |
Заменяет каждую подстроку этой строки, соответствующую литеральной целевой последовательности, на указанную литеральную последовательность замены. |
String |
replaceAll |
Заменяет каждую подстроку в этой строке, соответствующую заданному регулярному выражению, на заданную строку замены. |
String |
replaceFirst |
Заменяет первую подстроку в этой строке, соответствующую заданному регулярному выражению, на заданную строку замены. |
String |
resolveConstantDesc |
Разрешает этот экземпляр как ConstantDesc, результатом чего является сам экземпляр. |
String[] |
split |
Разделяет эту строку по соответствиям заданному регулярному выражению. |
String[] |
split |
Разделяет эту строку по соответствиям заданному регулярному выражению. |
String[] |
splitWithDelimiters |
Разделяет эту строку по соответствиям заданному регулярному выражению и возвращает как сами строки, так и разделители соответствий. |
boolean |
startsWith |
Проверяет, начинается ли эта строка с указанного префикса. |
boolean |
startsWith |
Проверяет, начинается ли подстрока этой строки, начиная с указанного индекса, с указанного префикса. |
String |
strip() |
Возвращает строку, значение которой — эта строка, со всеми начальными и конечными пробелами удаленными. |
String |
stripIndent() |
Возвращает строку, значение которой — эта строка, с удалёнными случайными пробелами в начале и конце каждой строки. |
String |
stripLeading() |
Возвращает строку, значение которой — эта строка, со всеми начальными пробелами удаленными. |
String |
stripTrailing() |
Возвращает строку, значение которой — эта строка, со всеми конечными пробелами удаленными. |
CharSequence |
subSequence |
Возвращает последовательность символов, которая является подпоследовательностью этой последовательности. |
String |
substring |
Возвращает строку, которая является подстрокой этой строки. |
String |
substring |
Возвращает строку, которая является подстрокой этой строки. |
char[] |
toCharArray() |
Преобразует эту строку в новый массив символов. |
String |
toLowerCase() |
Преобразует все символы в этой String в строчные буквы, используя правила локального языка по умолчанию. |
String |
toLowerCase |
Преобразует все символы в этой String в строчные буквы, используя правила указанного Locale. |
String |
toString() |
Этот объект (который уже является строкой!) |
String |
toUpperCase() |
Преобразует все символы в этой String в заглавные буквы, используя правила локального языка по умолчанию. |
String |
toUpperCase |
Преобразует все символы в этой String в заглавные буквы, используя правила указанного Locale. |
<R> R |
transform |
Этот метод позволяет применить функцию к this строке. |
String |
translateEscapes() |
Возвращает строку, значение которой — эта строка, с эскейп-последовательностями, переведёнными так, как если бы они были в строковой литерале. |
String |
trim() |
Возвращает строку, значение которой — эта строка, со всеми начальными и конечными пробелами удаленными, где пробел определяется как любой символ, код которого меньше или равен 'U+0020' (символ пробела). |
static String |
valueOf |
Возвращает строковое представление аргумента boolean. |
static String |
valueOf |
Возвращает строковое представление аргумента char. |
static String |
valueOf |
Возвращает строковое представление аргумента char. |
static String |
valueOf |
Возвращает строковое представление определённого подмассива аргумента char. |
static String |
valueOf |
Возвращает строковое представление аргумента double. |
static String |
valueOf |
Возвращает строковое представление аргумента float. |
static String |
valueOf |
Возвращает строковое представление аргумента int. |
static String |
valueOf |
Возвращает строковое представление аргумента long. |
static String |
valueOf |
Возвращает строковое представление аргумента Object. |
Подробное описание полей
CASE_INSENSITIVE_ORDER
public static final Comparator<String> CASE_INSENSITIVE_ORDER
String по принципу compareToIgnoreCase. Этот компаратор сериализуем. Обратите внимание, что этот компаратор не учитывает локаль и может привести к неудовлетворительному упорядочению для некоторых локалей. Класс Collator обеспечивает чувствительную к локали сравнение.
- Since:
- 1.2
- See Also:
Подробное описание конструкторов
String
public String()
String, представляющий пустую последовательность символов. Обратите внимание, что использование этого конструктора не требуется, так как строки неизменяемы.String
public String(String original)
String, представляющий ту же последовательность символов, что и аргумент; другими словами, новая строка является копией аргументной строки. Если явная копия original не требуется, использование этого конструктора не нужно, так как строки неизменяемы.- Parameters:
-
original- AString
String
public String(char[] value)
String, представляющий последовательность символов, содержащуюся в массиве символов-аргументе. Содержимое массива символов копируется; последующие изменения массива символов не влияют на вновь созданную строку.- Parameters:
-
value- Начальное значение строки
String
public String(char[] value, int offset, int count)
String, содержащий символы из подмассива массива символов-аргумента. Аргумент offset — индекс первого символа подмассива, а аргумент count задаёт длину подмассива. Содержимое подмассива копируется; последующие изменения массива символов не влияют на вновь созданную строку.- Parameters:
-
value- Массив, являющийся источником символов -
offset- Начальный смещение -
count- Длина - Throws:
-
IndexOutOfBoundsException- Еслиoffsetотрицательно,countотрицательно илиoffsetбольшеvalue.length - count
String
public String(int[] codePoints, int offset, int count)
String, содержащий символы из подмассива массива кодов Unicode. Аргумент offset — индекс первого кода Unicode подмассива, а аргумент count задаёт длину подмассива. Содержимое подмассива преобразуется в char; последующие изменения массива int не влияют на вновь созданную строку.- Parameters:
-
codePoints- Массив, являющийся источником кодов Unicode -
offset- Начальный смещение -
count- Длина - Throws:
-
IllegalArgumentException- Если вcodePointsнайдены некорректные коды Unicode -
IndexOutOfBoundsException- Еслиoffsetотрицательно,countотрицательно илиoffsetбольшеcodePoints.length - count - Since:
- 1.5
String
@Deprecated(since="1.1") public String(byte[] ascii, int hibyte, int offset, int count)
String, принимающих Charset, имя набора символов или использующих default charset.String, построенный из подмассива массива 8-битовых целых значений. Аргумент offset — индекс первого байта подмассива, а аргумент count задаёт длину подмассива.
Каждый byte в подмассиве преобразуется в char согласно конструктору String(byte[],int).
- Parameters:
-
ascii- Байты, подлежащие преобразованию в символы -
hibyte- Верхние 8 бит каждого 16-битного кода Unicode -
offset- Начальный смещение -
count- Длина - Throws:
-
IndexOutOfBoundsException- Еслиoffsetотрицательно,countотрицательно илиoffsetбольшеascii.length - count - See Also:
String
@Deprecated(since="1.1") public String(byte[] ascii, int hibyte)
String, принимающих Charset, имя набора символов или использующих default charset.String содержащий символы, построенные из массива 8-битовых целых значений. Каждый символ c в результирующей строке строится из соответствующего компонента b в массиве байт так, что:
c == (char)(((hibyte & 0xff) << 8)
| (b & 0xff))
- Parameters:
-
ascii- Байты, подлежащие преобразованию в символы -
hibyte- Верхние 8 бит каждого 16-битного кода Unicode - See Also:
String
public String(byte[] bytes, int offset, int length, String charsetName) throws UnsupportedEncodingException
Поведение этого конструктора, когда заданные байты не являются корректными в заданном наборе символов, не определено. Класс CharsetDecoder следует использовать, когда требуется больший контроль над процессом декодирования.
- Parameters:
-
bytes- Байты, подлежащие декодированию в символы -
offset- Индекс первого байта для декодирования -
length- Количество байтов для декодирования -
charsetName- Имя поддерживаемого набора символов - Throws:
-
UnsupportedEncodingException- Если указанный набор символов не поддерживается -
IndexOutOfBoundsException- Еслиoffsetотрицательно,lengthотрицательно илиoffsetбольшеbytes.length - length - Since:
- 1.1
String
public String(byte[] bytes, int offset, int length, Charset charset)
Этот метод всегда заменяет некорректные входные последовательности и неотображаемые символы строкой замены по умолчанию этого набора символов. Класс CharsetDecoder следует использовать, когда требуется больший контроль над процессом декодирования.
- Parameters:
-
bytes- Байты, подлежащие декодированию в символы -
offset- Индекс первого байта для декодирования -
length- Количество байтов для декодирования -
charset- charset для декодированияbytes - Throws:
-
IndexOutOfBoundsException- Еслиoffsetотрицательно,lengthотрицательно илиoffsetбольшеbytes.length - length - Since:
- 1.6
String
public String(byte[] bytes, String charsetName) throws UnsupportedEncodingException
Поведение этого конструктора, когда заданные байты не являются допустимыми в заданной кодировке, не определено. Класс CharsetDecoder следует использовать, когда требуется больший контроль над процессом декодирования.
- Parameters:
-
bytes- Байты, подлежащие декодированию в символы -
charsetName- Название поддерживаемой кодировки - Throws:
-
UnsupportedEncodingException- Если указанная кодировка не поддерживается - Since:
- 1.1
String
public String(byte[] bytes, Charset charset)
Этот метод всегда заменяет последовательности повреждённого входного потока и неотображаемых символов на строку по умолчанию для этой кодировки. Класс CharsetDecoder следует использовать, когда требуется больший контроль над процессом декодирования.
- Parameters:
-
bytes- Байты, подлежащие декодированию в символы -
charset- Кодировка, используемая для декодирования байтов - Since:
- 1.6
String
public String(byte[] bytes, int offset, int length)
default charset. Длина новой строки — функция от кодировки и, следовательно, может не совпадать с длиной подмассива. Поведение этого конструктора, когда заданные байты не являются допустимыми в кодировке по умолчанию, не определено. Класс CharsetDecoder следует использовать, когда требуется больший контроль над процессом декодирования.
- Parameters:
-
bytes- Байты, подлежащие декодированию в символы -
offset- Индекс первого байта для декодирования -
length- Количество байтов для декодирования - Throws:
-
IndexOutOfBoundsException- Еслиoffsetотрицательно,lengthотрицательно илиoffsetбольше, чемbytes.length - length - Since:
- 1.1
String
public String(byte[] bytes)
default charset. Длина новой строки — функция от кодировки и, следовательно, может не совпадать с длиной массива байтов. Поведение этого конструктора, когда заданные байты не являются допустимыми в кодировке по умолчанию, не определено. Класс CharsetDecoder следует использовать, когда требуется больший контроль над процессом декодирования.
- Parameters:
-
bytes- Байты, подлежащие декодированию в символы - Since:
- 1.1
String
public String(StringBuffer buffer)
- Parameters:
-
buffer- Буфер строк
String
public String(StringBuilder builder)
Этот конструктор предоставлен для облегчения миграции к
StringBuilder. Получение строки из билдера строк через метод
toString вероятно будет выполняться быстрее и обычно предпочтительнее.
- Parameters:
-
builder- Билдер строк - Since:
- 1.5
Методы
length
public int length()
- Specified by:
-
lengthв интерфейсеCharSequence - Returns:
- длина последовательности символов, представленных этим объектом.
isEmpty
public boolean isEmpty()
- Specified by:
-
isEmptyв интерфейсеCharSequence - Returns:
-
trueеслиlength()равно0, иначеfalse - Since:
- 1.6
charAt
public char charAt(int index)
0 до length() - 1. Первый char символ последовательности находится по индексу 0, следующий — по индексу 1, и так далее, как и для индексации массивов. Если значение символа, заданное индексом, является суррогатным, возвращается значение суррогата.
- Specified by:
-
charAtв интерфейсеCharSequence - Parameters:
-
index- индекс значения символа. - Returns:
- значение символа по указанному индексу этой строки. Первый символ находится по индексу
0. - Throws:
-
IndexOutOfBoundsException- если аргумент индекса отрицательный или не меньше длины этой строки.
codePointAt
public int codePointAt(int index)
char (символы Юникод) и изменяется от 0 до length() - 1. Если значение символа, заданное индексом, находится в диапазоне старшего суррогата, следующий индекс меньше длины этой строки, и значение символа по следующему индексу находится в диапазоне младшего суррогата, то возвращается дополнительный код символа, соответствующий этой паре суррогатов. В противном случае возвращается значение символа по указанному индексу.
- Parameters:
-
index- индекс для значений символов - Returns:
- значение кода символа по указанному индексу
- Throws:
-
IndexOutOfBoundsException- если аргумент индекса отрицательный или не меньше длины этой строки. - Since:
- 1.5
codePointBefore
public int codePointBefore(int index)
char (символы Юникод) и изменяется от 1 до length. Если значение символа по (index - 1) находится в диапазоне младшего суррогата, (index - 2) не отрицательно, и значение символа по (index -
2) находится в диапазоне старшего суррогата, то возвращается дополнительное значение кода символа пары суррогатов. Если значение символа по index -
1 является непарным младшим суррогатом или старшим суррогатом, возвращается значение суррогата.
- Parameters:
-
index- индекс, следующий за символом, который должен быть возвращён - Returns:
- значение кода Unicode символа перед данным индексом.
- Throws:
-
IndexOutOfBoundsException- если аргумент индекса меньше 1 или больше длины этой строки. - Since:
- 1.5
codePointCount
public int codePointCount(int beginIndex, int endIndex)
beginIndex и заканчивается char по индексу endIndex - 1. Таким образом, длина (в char ) диапазона текста составляет endIndex-beginIndex. Непарные суррогаты в текстовом диапазоне считаются одним символом Юникод каждый.- Parameters:
-
beginIndex- индекс первогоcharдиапазона текста. -
endIndex- индекс после последнегоcharдиапазона текста. - Returns:
- количество символов Юникод в указанном текстовом диапазоне
- Throws:
-
IndexOutOfBoundsException- еслиbeginIndexотрицательно, илиendIndexбольше длины этой строки, илиbeginIndexбольшеendIndex. - Since:
- 1.5
смещение по кодовым точкам
public int offsetByCodePoints(int index, int codePointOffset)
String , смещённый относительно данного index на codePointOffset кодовых точек. Непарные суррогаты в текстовом диапазоне, заданном index и codePointOffset, учитываются как по одной кодовой точке каждый.- Параметры:
-
index- индекс для смещения -
codePointOffset- смещение в кодовых точках - Возвращает:
- индекс в этой
String - Исключения:
-
IndexOutOfBoundsException- еслиindexотрицательно или больше длины этойString, или еслиcodePointOffsetположительно, и подстрока, начинающаяся сindex, имеет меньшеcodePointOffsetкодовых точек, или еслиcodePointOffsetотрицательно, и подстрока передindexимеет меньше абсолютного значенияcodePointOffsetкодовых точек. - С момента:
- 1.5
getChars
public void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
Первый копируемый символ находится по индексу srcBegin; последний копируемый символ находится по индексу srcEnd-1 (следовательно, общее количество копируемых символов равно srcEnd-srcBegin). Символы копируются в подмассив dst , начиная с индекса dstBegin и заканчивая индексом:
dstBegin + (srcEnd-srcBegin) - 1
- Параметры:
-
srcBegin- индекс первого символа в строке для копирования. -
srcEnd- индекс после последнего символа в строке для копирования. -
dst- целевой массив. -
dstBegin- начальное смещение в целевом массиве. - Исключения:
-
IndexOutOfBoundsException- Если выполняется любое из следующих условий:-
srcBeginотрицательно. -
srcBeginбольше, чемsrcEnd -
srcEndбольше длины этой строки -
dstBeginотрицательно -
dstBegin+(srcEnd-srcBegin)больше, чемdst.length
-
getBytes
@Deprecated(since="1.1") public void getBytes(int srcBegin, int srcEnd, byte[] dst, int dstBegin)
getBytes(), который использует default charset. Первый копируемый символ находится по индексу srcBegin; последний копируемый символ находится по индексу srcEnd-1. Общее количество копируемых символов равно srcEnd-srcBegin. Символы, преобразованные в байты, копируются в подмассив
dst , начиная с индекса dstBegin и заканчивая индексом:
dstBegin + (srcEnd-srcBegin) - 1
- Параметры:
-
srcBegin- Индекс первого символа в строке для копирования -
srcEnd- Индекс после последнего символа в строке для копирования -
dst- Целевой массив -
dstBegin- Начальное смещение в целевом массиве - Исключения:
-
IndexOutOfBoundsException- Если выполняется любое из следующих условий:-
srcBeginотрицательно -
srcBeginбольше, чемsrcEnd -
srcEndбольше длины этой строки -
dstBeginотрицательно -
dstBegin+(srcEnd-srcBegin)больше, чемdst.length
-
getBytes
public byte[] getBytes(String charsetName) throws UnsupportedEncodingException
String в последовательность байтов, используя указанную кодировку, сохраняя результат в новый массив байтов. Поведение этого метода, когда данную строку нельзя закодировать в заданной кодировке, не определено. Класс CharsetEncoder следует использовать, когда требуется больший контроль над процессом кодирования.
- Параметры:
-
charsetName- Имя поддерживаемой кодировки - Возвращает:
- Результирующий массив байтов
- Исключения:
-
UnsupportedEncodingException- Если указанная кодировка не поддерживается - С момента:
- 1.1
getBytes
public byte[] getBytes(Charset charset)
String в последовательность байтов, используя заданную кодировку, сохраняя результат в новый массив байтов. Этот метод всегда заменяет некорректные входные данные и неотображаемые последовательности символов стандартным массивом замены этой кодировки. Класс CharsetEncoder следует использовать, когда требуется больший контроль над процессом кодирования.
- Параметры:
-
charset- Charset для кодированияString - Возвращает:
- Результирующий массив байтов
- С момента:
- 1.6
getBytes
public byte[] getBytes()
String в последовательность байтов, используя default charset, сохраняя результат в новый массив байтов. Поведение этого метода, когда данную строку нельзя закодировать в стандартной кодировке, не определено. Класс CharsetEncoder следует использовать, когда требуется больший контроль над процессом кодирования.
- Возвращает:
- Результирующий массив байтов
- С момента:
- 1.1
equals
public boolean equals(Object anObject)
true тогда и только тогда, когда аргумент не null и является объектом типа
String , представляющим ту же последовательность символов, что и этот объект. Для более тонкого сравнения строк используйте Collator.
- Overrides:
-
equalsв классеObject - Параметры:
-
anObject- Объект для сравнения с этойString - Возвращает:
-
trueесли данный объект представляетString, эквивалентную этой строке,falseв противном случае - См. также:
contentEquals
public boolean contentEquals(StringBuffer sb)
StringBuffer. Результат равен true тогда и только тогда, когда эта String представляет ту же последовательность символов, что и указанная StringBuffer. Этот метод синхронизируется на StringBuffer. Для более тонкого сравнения строк используйте Collator.
- Параметры:
-
sb- УказаннаяStringBufferдля сравнения с этойString - Возвращает:
-
trueесли этаStringпредставляет ту же последовательность символов, что и указаннаяStringBuffer,falseв противном случае - С момента:
- 1.4
contentEquals
public boolean contentEquals(CharSequence cs)
CharSequence. Результат равен true тогда и только тогда, когда эта String представляет ту же последовательность значений char, что и указанная последовательность. Обратите внимание, что если CharSequence является StringBuffer, то метод синхронизируется на нём. Для более тонкого сравнения строк используйте Collator.
- Параметры:
-
cs- Последовательность для сравнения с этойString - Возвращает:
-
trueесли этаStringпредставляет ту же последовательность значений char, что и указанная последовательность,falseв противном случае - С момента:
- 1.5
equalsIgnoreCase
public boolean equalsIgnoreCase(String anotherString)
String с другим String, игнорируя различия в регистре. Две строки считаются равными, игнорируя регистр, если они имеют одинаковую длину и соответствующие кодовые точки Юникода в двух строках равны, игнорируя регистр. Две кодовые точки Юникода считаются одинаковыми, игнорируя регистр, если выполняется хотя бы одно из следующих условий:
- Две кодовые точки Юникода совпадают (как сравниваются оператором
==) - Вызов
Character.toLowerCase(Character.toUpperCase(int))для каждой кодовой точки Юникода дает одинаковый результат
Обратите внимание, что этот метод не учитывает локаль и может дать неудовлетворительные результаты для некоторых локалей. Класс Collator обеспечивает сравнение, учитывающее локаль.
- Parameters:
-
anotherString- СравниваемаяStringс этимString - Returns:
-
trueесли аргумент неnullи он представляет эквивалентнуюStringбез учёта регистра;falseв противном случае - See Also:
compareTo
public int compareTo(String anotherString)
String объектом, сравнивается лексикографически с последовательностью символов, представленной строкой-аргументом. Результат — отрицательное целое число, если этот String объект предшествует строке-аргументу в лексикографическом порядке. Результат — положительное целое число, если этот String объект следует за строкой-аргументом в лексикографическом порядке. Результат равен нулю, если строки равны; compareTo возвращает 0 точно тогда, когда метод equals(Object) возвращает true. Это определение лексикографического порядка. Если две строки различаются, то либо у них есть разные символы в некотором индексе, который является допустимым индексом для обеих строк, либо их длины различаются, или оба условия выполняются. Если у них есть разные символы в одном или нескольких позициях индексов, пусть k будет наименьшим таким индексом; тогда строка, символ которой в позиции k имеет меньшее значение, как определено с помощью оператора <, лексикографически предшествует другой строке. В этом случае, compareTo возвращает разность двух значений символов в позиции k в двух строках — то есть значение:
Если нет позиции индекса, в которой они различаются, то более короткая строка лексикографически предшествует более длинной строке. В этом случаеthis.charAt(k)-anotherString.charAt(k)
compareTo возвращает разность длин строк — то есть значение: this.length()-anotherString.length()
Для более точного сравнения строк обратитесь к Collator.
- Specified by:
-
compareToв интерфейсеComparable<String> - Parameters:
-
anotherString- СравниваемаяString. - Returns:
- значение
0если строка-аргумент равна этой строке; значение меньше0, если эта строка лексикографически меньше строки-аргумента; и значение больше0, если эта строка лексикографически больше строки-аргумента.
compareToIgnoreCase
public int compareToIgnoreCase(String str)
compareTo для версий строк с преобразованным регистром, где различия в регистре устранены вызовом Character.toLowerCase(Character.toUpperCase(int)) для каждой кодовой точки Юникода. Обратите внимание, что этот метод не учитывает локаль и может привести к неудовлетворительному порядку для некоторых локалей. Класс Collator обеспечивает сравнение, учитывающее локаль.
- Parameters:
-
str- СравниваемаяString. - Returns:
- отрицательное целое число, ноль или положительное целое число, в зависимости от того, больше ли указанная строка, равна ли она или меньше этой строки, игнорируя различия в регистре.
- Since:
- 1.2
- See Also:
regionMatches
public boolean regionMatches(int toffset, String other, int ooffset, int len)
Подстрока этого String объекта сравнивается с подстрокой аргумента other. Результат — true, если эти подстроки представляют идентичные последовательности символов. Подстрока этого String объекта, подлежащая сравнению, начинается с индекса toffset и имеет длину len. Подстрока other, подлежащая сравнению, начинается с индекса ooffset и имеет длину len. Результат — false тогда и только тогда, когда выполняется хотя бы одно из следующих условий:
-
toffsetотрицательно. -
ooffsetотрицательно. -
toffset+lenбольше длины этогоStringобъекта. -
ooffset+lenбольше длины другого аргумента. - Существует некоторое неотрицательное целое число k, меньшее
len, такое, что:this.charAt(toffset +k) != other.charAt(ooffset +k)
Обратите внимание, что этот метод не учитывает локаль. Класс Collator обеспечивает сравнение, учитывающее локаль.
- Parameters:
-
toffset- начальный смещение подстроки в этой строке. -
other- строковый аргумент. -
ooffset- начальный смещение подстроки в строке-аргументе. -
len- количество символов для сравнения. - Returns:
-
trueесли указанная подстрока этой строки точно совпадает с указанной подстрокой строки-аргумента;falseв противном случае.
regionMatches
public boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)
Подстрока этого String объекта сравнивается с подстрокой аргумента other. Результат — true если эти подстроки представляют последовательности кодовых точек Юникода, которые идентичны, игнорируя регистр, если и только если ignoreCase имеет значение true. Последовательности tsequence и osequence сравниваются, где tsequence — последовательность, полученная как если бы был вызван метод this.substring(toffset, toffset + len).codePoints(), и osequence — последовательность, полученная как если бы был вызван метод other.substring(ooffset, ooffset + len).codePoints(). Результат — true тогда и только тогда, когда выполняются все следующие условия:
-
toffsetнеотрицательно. -
ooffsetнеотрицательно. -
toffset+lenменьше или равно длине этогоStringобъекта. -
ooffset+lenменьше или равно длине другого аргумента. - Если
ignoreCaseравноfalse, все пары соответствующих кодовых точек Юникода имеют равные целочисленные значения; или, еслиignoreCaseравноtrue, методCharacter.toLowerCase(Character.toUpperCase(int))для всех пар кодовых точек Юникода приводит к получению равных целочисленных значений.
Обратите внимание, что этот метод не учитывает локаль и может привести к неудовлетворительным результатам для некоторых локалей, когда ignoreCase равно true. Класс Collator обеспечивает сравнение, учитывающее локаль.
- Parameters:
-
ignoreCase- еслиtrue, игнорировать регистр при сравнении символов. -
toffset- начальный смещение подстроки в этой строке. -
other- строковый аргумент. -
ooffset- начальный смещение подстроки в строке-аргументе. -
len- количество символов (единиц кода Юникода - 16-битное значениеchar), подлежащих сравнению. - Returns:
-
trueесли указанная подстрока этой строки совпадает с указанной подстрокой строки-аргумента;falseв противном случае. Точное совпадение или совпадение без учета регистра зависит от аргументаignoreCase. - See Also:
startsWith
public boolean startsWith(String prefix, int toffset)
- Parameters:
-
prefix- префикс. -
toffset- место начала поиска в этой строке. - Returns:
-
trueесли последовательность символов, представленная аргументом, является префиксом подстроки этого объекта, начинающейся с индексаtoffset;falseв противном случае. Результат равенfalseеслиtoffsetотрицательно или больше длины этогоStringобъекта; в противном случае результат совпадает с результатом выраженияthis.substring(toffset).startsWith(prefix)
startsWith
public boolean startsWith(String prefix)
- Parameters:
-
prefix- префикс. - Returns:
-
trueесли последовательность символов, представленная аргументом, является префиксом последовательности символов, представленной этой строкой;falseв противном случае. Обратите также внимание, чтоtrueбудет возвращено, если аргумент является пустой строкой или равен этомуStringобъекту, как определено методомequals(Object). - Since:
- 1.0
endsWith
public boolean endsWith(String suffix)
- Parameters:
-
suffix- суффикс. - Returns:
-
trueесли последовательность символов, представленная аргументом, является суффиксом последовательности символов, представленной этим объектом;falseв противном случае. Обратите внимание, что результат будетtrueесли аргумент является пустой строкой или равен этомуStringобъекту, как определено методомequals(Object).
hashCode
public int hashCode()
String объекта вычисляется как с использованием арифметикиs[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
int, где s[i] — i-й символ строки, n — длина строки, а ^ обозначает возведение в степень. (Значение хэша пустой строки равно нулю.)- Overrides:
-
hashCodeв классеObject - Returns:
- значение кода хэша для этого объекта.
- See Also:
indexOf
public int indexOf(int ch)
ch встречается в последовательности символов, представленной этим String объектом, то возвращается индекс (в единицах кода Юникода) первого такого вхождения. Для значений ch в диапазоне от 0 до 0xFFFF (включительно) это наименьшее значение k, для которого: верно. Для других значенийthis.charAt(k) == ch
ch, это наименьшее значение k, для которого: верно. В любом случае, если такой символ не встречается в этой строке, то возвращаетсяthis.codePointAt(k) == ch
-1. - Parameters:
-
ch- символ (кодовая точка Юникода). - Returns:
- индекс первого вхождения символа в последовательность символов, представленную этим объектом, или
-1если символ не встречается.
indexOf
public int indexOf(int ch, int fromIndex)
Если символ со значением ch встречается в последовательности символов, представленной этим String объектом в индексе не меньше fromIndex, то возвращается индекс первого такого вхождения. Для значений ch в диапазоне от 0 до 0xFFFF (включительно) это наименьшее значение k, для которого:
верно. Для других значений(this.charAt(k) == ch)&&(k >= fromIndex)
ch, это наименьшее значение k, для которого: верно. В любом случае, если такой символ не встречается в этой строке в или после позиции(this.codePointAt(k) == ch)&&(k >= fromIndex)
fromIndex, то возвращается -1. Нет ограничений на значение fromIndex. Если оно отрицательное, оно имеет тот же эффект, что и ноль: может быть произведена проверка всей строки. Если оно больше длины этой строки, то это эквивалентно тому, что оно равно длине этой строки: возвращается -1.
Все индексы указаны в значениях char (единицы кода Юникода).
- API Note:
- В отличие от
substring(int), например, этот метод не выбрасывает исключение, когдаfromIndexнаходится вне допустимого диапазона. Вместо этого он возвращает -1, когдаfromIndexбольше длины строки. Этот результат сам по себе неотличим от отсутствияchв строке. Если требуется более строгое поведение, следует рассмотретьindexOf(int, int, int). В случае сStrings, например,s.indexOf(ch, fromIndex, s.length())будет выбрасывать исключение, еслиfromIndexбольше длины строки или отрицательное. - Parameters:
-
ch- символ (кодовая точка Юникода). -
fromIndex- индекс для начала поиска. - Returns:
- индекс первого вхождения символа в последовательность символов, представленную этим объектом, которая больше или равна
fromIndex, или-1если символ не встречается.
indexOf
public int indexOf(int ch, int beginIndex, int endIndex)
beginIndex и останавливая его перед endIndex. Если символ со значением ch встречается в последовательности символов, представленной этим String объектом в индексе не меньше beginIndex но меньше endIndex, то возвращается индекс первого такого вхождения. Для значений ch в диапазоне от 0 до 0xFFFF (включительно) это наименьшее значение k, для которого:
верно. Для других значений(this.charAt(k) == ch) && (beginIndex <= k < endIndex)
ch, это наименьшее значение k, для которого: верно. В любом случае, если такой символ не встречается в этой строке в или после позиции(this.codePointAt(k) == ch) && (beginIndex <= k < endIndex)
beginIndex и до позиции endIndex, то возвращается -1. Все индексы указаны в значениях char (единицы кода Юникода).
- Parameters:
-
ch- символ (кодовая точка Юникода). -
beginIndex- индекс для начала поиска (включительно). -
endIndex- индекс для остановки поиска (исключительно). - Returns:
- индекс первого вхождения символа в последовательность символов, представленную этим объектом, который больше или равен
beginIndexи меньшеendIndex, или-1если символ не встречается. - Throws:
-
StringIndexOutOfBoundsException- еслиbeginIndexотрицательный, илиendIndexбольше длины этогоStringобъекта, илиbeginIndexбольшеendIndex. - Since:
- 21
lastIndexOf
public int lastIndexOf(int ch)
ch в диапазоне от 0 до 0xFFFF (включительно) возвращаемый индекс (в единицах кода Юникода) — это наибольшее значение k, для которого: верно. Для других значенийthis.charAt(k) == ch
ch, это наибольшее значение k, для которого: верно. В любом случае, если такой символ не встречается в этой строке, то возвращаетсяthis.codePointAt(k) == ch
-1. Поиск String выполняется в обратном порядке, начиная с последнего символа.- Parameters:
-
ch- символ (кодовая точка Юникода). - Returns:
- индекс последнего вхождения символа в последовательность символов, представленную этим объектом, или
-1если символ не встречается.
lastIndexOf
public int lastIndexOf(int ch, int fromIndex)
ch в диапазоне от 0 до 0xFFFF (включительно), возвращаемый индекс — это наибольшее значение k, для которого: верно. Для других значений(this.charAt(k) == ch)&&(k <= fromIndex)
ch, это наибольшее значение k, для которого: верно. В любом случае, если такой символ не встречается в этой строке в или до позиции(this.codePointAt(k) == ch)&&(k <= fromIndex)
fromIndex, то возвращается -1. Все индексы указаны в значениях char (единицы кода Юникода).
- Parameters:
-
ch- символ (кодовая точка Юникода). -
fromIndex- индекс для начала поиска. Нет ограничений на значениеfromIndex. Если оно больше или равно длине этой строки, то это эквивалентно тому, что оно равно на единицу меньше длины этой строки: проверяется вся строка. Если оно отрицательное, то это эквивалентно тому, что оно равно -1: возвращается -1. - Returns:
- индекс последнего вхождения символа в последовательность символов, представленную этим объектом, которая меньше или равна
fromIndex, или-1если символ не встречается до этой точки.
indexOf
public int indexOf(String str)
Возвращаемый индекс — это наименьшее значение k для которого:
this.startsWith(str, k)
Если такого значения k не существует, то возвращается -1. - Параметры:
-
str- подстрока, которую нужно найти. - Возвращает:
- индекс первого вхождения указанной подстроки или
-1, если такого вхождения нет.
indexOf
public int indexOf(String str, int fromIndex)
Возвращаемый индекс — это наименьшее значение k для которого:
k >= Math.min(fromIndex, this.length()) &&
this.startsWith(str, k)
Если такого значения k не существует, то возвращается -1. - Примечание API:
- В отличие от
substring(int), например, этот метод не генерирует исключение, когдаfromIndexнаходится вне допустимого диапазона. Вместо этого он возвращает -1, когдаfromIndexбольше длины строки. Этот результат сам по себе неотличим от подлинного отсутствияstrв строке. Если требуется более строгое поведение, следует рассмотретьindexOf(String, int, int). В случае сStringsи непустойstr, например,s.indexOf(str, fromIndex, s.length())выбросит исключение, еслиfromIndexбольше длины строки или отрицательно. - Параметры:
-
str- подстрока, которую нужно найти. -
fromIndex- индекс, с которого начать поиск. - Возвращает:
- индекс первого вхождения указанной подстроки, начиная с указанного индекса, или
-1, если такого вхождения нет.
indexOf
public int indexOf(String str, int beginIndex, int endIndex)
this. Этот метод возвращает тот же результат, что и вызов
s.substring(beginIndex, endIndex).indexOf(str) + beginIndex
если возвращаемый индекс indexOf(String) неотрицательный, и возвращает -1 в противном случае. (Подстрока не создается.)- Параметры:
-
str- подстрока, которую нужно найти. -
beginIndex- индекс, с которого начать поиск (включительно). -
endIndex- индекс, на котором остановить поиск (исключительно). - Возвращает:
- индекс первого вхождения указанной подстроки в заданном диапазоне индексов или
-1, если такого вхождения нет. - Исключения:
-
StringIndexOutOfBoundsException- еслиbeginIndexотрицателен, илиendIndexбольше длины этого объектаString, илиbeginIndexбольшеendIndex. - С:
- 21
lastIndexOf
public int lastIndexOf(String str)
this.length(). Возвращаемый индекс — это наибольшее значение k для которого:
this.startsWith(str, k)
Если такого значения k не существует, то возвращается -1. - Параметры:
-
str- подстрока, которую нужно найти. - Возвращает:
- индекс последнего вхождения указанной подстроки или
-1, если такого вхождения нет.
lastIndexOf
public int lastIndexOf(String str, int fromIndex)
Возвращаемый индекс — это наибольшее значение k для которого:
k <= Math.min(fromIndex, this.length()) &&
this.startsWith(str, k)
Если такого значения k не существует, то возвращается -1. - Параметры:
-
str- подстрока, которую нужно найти. -
fromIndex- индекс, с которого начать поиск. - Возвращает:
- индекс последнего вхождения указанной подстроки, выполняя поиск назад от указанного индекса, или
-1, если такого вхождения нет.
substring
public String substring(int beginIndex)
Примеры:
"unhappy".substring(2) returns "happy" "Harbison".substring(3) returns "bison" "emptiness".substring(9) returns "" (an empty string)
- Параметры:
-
beginIndex- начальный индекс, включительно. - Возвращает:
- указанная подстрока.
- Исключения:
-
IndexOutOfBoundsException- еслиbeginIndexотрицателен или больше длины этого объектаString.
substring
public String substring(int beginIndex, int endIndex)
beginIndex и продолжается до символа с индексом endIndex - 1. Таким образом, длина подстроки составляет endIndex-beginIndex. Примеры:
"hamburger".substring(4, 8) returns "urge" "smiles".substring(1, 5) returns "mile"
- Параметры:
-
beginIndex- начальный индекс, включительно. -
endIndex- конечный индекс, исключая. - Возвращает:
- указанная подстрока.
- Исключения:
-
IndexOutOfBoundsException- еслиbeginIndexотрицателен, илиendIndexбольше длины этого объектаString, илиbeginIndexбольшеendIndex.
subSequence
public CharSequence subSequence(int beginIndex, int endIndex)
Вызов этого метода в форме
ведет себя точно так же, как вызовstr.subSequence(begin, end)
str.substring(begin, end)
- Определено в:
-
subSequenceв интерфейсеCharSequence - Примечание API:
- Этот метод определен таким образом, чтобы класс
Stringмог реализовать интерфейсCharSequence. - Параметры:
-
beginIndex- начальный индекс, включительно. -
endIndex- конечный индекс, исключая. - Возвращает:
- указанная подпоследовательность.
- Исключения:
-
IndexOutOfBoundsException- еслиbeginIndexилиendIndexотрицательны, еслиendIndexбольшеlength(), или еслиbeginIndexбольшеendIndex - С:
- 1.4
concat
public String concat(String str)
Если длина аргументной строки равна 0, то возвращается этот объект String. В противном случае возвращается объект String, который представляет собой последовательность символов, являющуюся конкатенацией последовательности символов, представленной этим объектом String, и последовательности символов, представленной аргументной строкой.
Примеры:
"cares".concat("s") returns "caress"
"to".concat("get").concat("her") returns "together"
- Параметры:
-
str- строка, которая присоединяется к концу этой строки. - Возвращает:
- строка, представляющая собой конкатенацию символов этого объекта и символов аргументной строки.
replace
public String replace(char oldChar, char newChar)
oldChar в этой строке на newChar. Если символ oldChar не встречается в последовательности символов, представленной этим объектом String, то возвращается ссылка на этот объект String. В противном случае возвращается объект String, который представляет собой последовательность символов, идентичную последовательности символов, представленной этим объектом String, за исключением того, что каждое вхождение oldChar заменено на вхождение newChar.
Примеры:
"mesquite in your cellar".replace('e', 'o')
returns "mosquito in your collar"
"the war of baronets".replace('r', 'y')
returns "the way of bayonets"
"sparring with a purple porpoise".replace('p', 't')
returns "starring with a turtle tortoise"
"JonL".replace('q', 'x') returns "JonL" (no change)
- Параметры:
-
oldChar- старый символ. -
newChar- новый символ. - Возвращает:
- строка, полученная из этой строки заменой каждого вхождения
oldCharнаnewChar.
matches
public boolean matches(String regex)
Вызов этого метода в форме str.matches(regex) дает ровно тот же результат, что и выражение
Pattern.matches(regex, str)
- Параметры:
-
regex- регулярное выражение, которому должна соответствовать эта строка - Возвращает:
-
trueесли и только если эта строка соответствует заданному регулярному выражению - Исключения:
-
PatternSyntaxException- если синтаксис регулярного выражения некорректен - С:
- 1.4
- См. также:
содержит
public boolean contains(CharSequence s)
- Параметры:
-
s- последовательность, которую нужно найти - Возвращает:
- true, если эта строка содержит
s, в противном случае false - С тех пор:
- 1.5
replaceFirst
public String replaceFirst(String regex, String replacement)
Вызов этого метода в форме str.replaceFirst(regex, repl) дает ровно тот же результат, что и выражение
Pattern.compile(regex).matcher(str).replaceFirst(repl)
Обратите внимание, что обратные слэши (\) и знаки доллара ($) в строке замены могут привести к результатам, отличным от тех, если бы она обрабатывалась как строка замены без учета специальных символов; см. Matcher.replaceFirst(java.lang.String). Используйте Matcher.quoteReplacement(java.lang.String), чтобы подавить специальное значение этих символов, если необходимо.
- Параметры:
-
regex- регулярное выражение, которому должна соответствовать эта строка -
replacement- строка, которая должна быть подставлена вместо первого совпадения - Возвращает:
- Результат
String - Исключения:
-
PatternSyntaxException- если синтаксис регулярного выражения некорректен - С тех пор:
- 1.4
- См. также:
replaceAll
public String replaceAll(String regex, String replacement)
Вызов этого метода в форме str.replaceAll(regex, repl) дает ровно тот же результат, что и выражение
Pattern.compile(regex).matcher(str).replaceAll(repl)
Обратите внимание, что обратные слэши (\) и знаки доллара ($) в строке замены могут привести к результатам, отличным от тех, если бы она обрабатывалась как строка замены без учета специальных символов; см. Matcher.replaceAll. Используйте Matcher.quoteReplacement(java.lang.String), чтобы подавить специальное значение этих символов, если необходимо.
- Параметры:
-
regex- регулярное выражение, которому должна соответствовать эта строка -
replacement- строка, которая должна быть подставлена вместо каждого совпадения - Возвращает:
- Результат
String - Исключения:
-
PatternSyntaxException- если синтаксис регулярного выражения некорректен - С тех пор:
- 1.4
- См. также:
replace
public String replace(CharSequence target, CharSequence replacement)
- Параметры:
-
target- последовательность значений char, которые нужно заменить -
replacement- последовательность значений char замены - Возвращает:
- Результирующая строка
- С тех пор:
- 1.5
разделить
public String[] split(String regex, int limit)
Массив, возвращаемый этим методом, содержит каждую подстроку этой строки, которая завершается другой подстрокой, соответствующей данному выражению, или завершается концом строки. Подстроки в массиве находятся в том порядке, в котором они встречаются в этой строке. Если выражение не соответствует никакой части входных данных, то результирующий массив содержит только один элемент, а именно эту строку.
Когда есть совпадение с положительной шириной в начале этой строки, то пустая ведущая подстрока включается в начало результирующего массива. Однако совпадение с нулевой шириной в начале никогда не порождает такую пустую ведущую подстроку.
Параметр limit управляет количеством применений шаблона и, следовательно, влияет на длину результирующего массива.
Если limit положительный, то шаблон будет применяться не более limit - 1 раз, длина массива будет не больше limit, и последний элемент массива будет содержать все входные данные после последнего совпавшего разделителя.
Если limit равен нулю, то шаблон будет применяться как можно больше раз, длина массива может быть любой, и пустые строки в конце будут отброшены.
Если limit отрицательный, то шаблон будет применяться как можно больше раз, и длина массива может быть любой.
Строка "boo:and:foo", например, дает следующие результаты с этими параметрами:
Регулярное выражение Предел Результат : 2 { "boo", "and:foo" }5 { "boo", "and", "foo" }-2 { "boo", "and", "foo" }o 5 { "b", "", ":and:f", "", "" }-2 { "b", "", ":and:f", "", "" }0 { "b", "", ":and:f" }
Вызов этого метода в форме str.split(regex, n) дает тот же результат, что и выражение
Pattern.compile(regex).split(str, n)
- Параметры:
-
regex- разделяющее регулярное выражение -
limit- порог результата, как описано выше - Возвращает:
- массив строк, вычисленный путем разделения этой строки вокруг совпадений с заданным регулярным выражением
- Исключения:
-
PatternSyntaxException- если синтаксис регулярного выражения некорректен - С тех пор:
- 1.4
- См. также:
splitWithDelimiters
public String[] splitWithDelimiters(String regex, int limit)
Массив, возвращаемый этим методом, содержит каждый подстроку этой строки, которая завершается другой подстрокой, соответствующей заданному выражению, или завершается концом строки. Каждая подстрока сразу следует за подпоследовательностью (разделителем), соответствующей заданному выражению, за исключением последней подстроки, которая ничего не следует. Подстроки в массиве и разделители находятся в том порядке, в котором они появляются во входной строке. Если выражение не соответствует никакой части входных данных, то возвращаемый массив содержит только одну строку — эту строку.
Параметр limit управляет количеством применений шаблона и, следовательно, влияет на длину возвращаемого массива.
- Если limit положительное, то шаблон будет применяться не более limit - 1 раз, длина массива не будет больше 2 × limit - 1, а последняя запись массива будет содержать все входные данные после последнего совпавшего разделителя.
- Если limit равно нулю, то шаблон будет применяться как можно больше раз, длина массива может быть любой, и пустые хвостовые строки будут отброшены.
- Если limit отрицательное, то шаблон будет применяться как можно больше раз, и длина массива может быть любой.
Входная "boo:::and::foo", например, даёт следующие результаты с этими параметрами:
| Регулярное выражение | Ограничение | Результат |
|---|---|---|
| :+ | 2 | { "boo", ":::", "and::foo" } |
| 5 | { "boo", ":::", "and", "::", "foo" } |
|
| -1 | { "boo", ":::", "and", "::", "foo" } |
|
| o | 5 | { "b", "o", "", "o", ":::and::f", "o", "", "o", "" } |
| -1 | { "b", "o", "", "o", ":::and::f", "o", "", "o", "" } |
|
| 0 | { "b", "o", "", "o", ":::and::f", "o", "", "o" } |
- Замечание API:
- Вызов этого метода в форме str.
splitWithDelimiters(regex,n)даёт тот же результат, что и выражениеPattern.compile(regex).splitWithDelimiters(str, n) - Параметры:
-
regex- разделяющее регулярное выражение -
limit- порог результата, как описано выше - Возвращает:
- массив строк, вычисленный путём разделения этой строки по совпадениям с заданным регулярным выражением, чередуя подстроки и соответствующие разделители
- C момента:
- 21
split
public String[] split(String regex)
Этот метод работает так же, как если бы вызывался двухаргументный метод split с заданным выражением и аргументом ограничения ноль. Следовательно, пустые хвостовые строки не включаются в результирующий массив.
Строка "boo:and:foo", например, даёт следующие результаты с этими выражениями:
Регулярное выражение Результат : { "boo", "and", "foo" }o { "b", "", ":and:f" }
- Параметры:
-
regex- разделяющее регулярное выражение - Возвращает:
- массив строк, вычисленный путём разделения этой строки по совпадениям с заданным регулярным выражением
- Исключения:
-
PatternSyntaxException- если синтаксис регулярного выражения неверен - C момента:
- 1.4
- См. также:
join
public static String join(CharSequence delimiter, CharSequence... elements)
CharSequence elements, соединёнными с копией указанного delimiter. Например,Обратите внимание, что если элемент равен null, то добавляетсяString message = String.join("-", "Java", "is", "cool"); // message returned is: "Java-is-cool"
"null". - Параметры:
-
delimiter- разделитель между каждым элементом -
elements- элементы для объединения. - Возвращает:
- новая строка, образованная копиями
elements, разделенными указаннымdelimiter - Исключения:
-
NullPointerException- Еслиdelimiterилиelementsравноnull - C момента:
- 1.8
- См. также:
join
public static String join(CharSequence delimiter, Iterable<? extends CharSequence> elements)
CharSequence elements, соединёнными с копией указанного delimiter. Например,Обратите внимание, что если отдельный элемент равен null, то добавляетсяList<String> strings = List.of("Java", "is", "cool"); String message = String.join(" ", strings); // message returned is: "Java is cool" Set<String> strings = new LinkedHashSet<>(List.of("Java", "is", "very", "cool")); String message = String.join("-", strings); // message returned is: "Java-is-very-cool"
"null". - Параметры:
-
delimiter- последовательность символов, используемая для разделения каждого изelementsв результирующей строке -
elements- итерируемый объект, элементы которого будут объединены. - Возвращает:
- новая строка, составленная из элементов аргумента
- Исключения:
-
NullPointerException- Еслиdelimiterилиelementsравноnull - C момента:
- 1.8
- См. также:
toLowerCase
public String toLowerCase(Locale locale)
String в строчные буквы, используя правила заданного Locale. Преобразование регистра основано на версии стандарта Юникод, указанной классом Character. Поскольку преобразования регистра не всегда являются преобразованиями символа 1:1, результирующая String и эта String могут отличаться по длине. Примеры преобразований в нижний регистр приведены в следующей таблице:
| Код языка локали | Верхний регистр | Нижний регистр | Описание |
|---|---|---|---|
| tr (турецкий) | \u0130 | \u0069 | заглавная буква I с точкой сверху -> строчная буква i |
| tr (турецкий) | \u0049 | \u0131 | заглавная буква I -> строчная буква i без точки |
| (все) | French Fries | french fries | все символы в строке приведены в нижний регистр |
| (все) | ΙΧΘΥΣ | ιχθυσ | все символы в строке приведены в нижний регистр |
- Параметры:
-
locale- использовать правила преобразования регистра для этой локали - Возвращает:
- строка, преобразованная в нижний регистр.
- C момента:
- 1.1
- См. также:
toLowerCase
public String toLowerCase()
String в строчные буквы, используя правила по умолчанию локали. Этот метод эквивалентен toLowerCase(Locale.getDefault()). - Замечание API:
- Этот метод чувствителен к регистру локали и может давать неожиданные результаты при использовании для строк, которые предполагается интерпретировать независимо от локали. Примерами являются идентификаторы языков программирования, ключи протоколов и теги HTML. Например,
"TITLE".toLowerCase()в турецкой локали возвращает"t\u0131tle", где '\u0131' — символ LATIN SMALL LETTER DOTLESS I. Для получения корректных результатов для строк, нечувствительных к регистру локали, используйтеtoLowerCase(Locale.ROOT). - Возвращает:
- строка, преобразованная в нижний регистр.
- См. также:
toUpperCase
public String toUpperCase(Locale locale)
String в верхний регистр, используя правила заданного Locale. Преобразование регистров основано на версии стандарта Unicode, указанной классом Character. Поскольку преобразования регистров не всегда являются взаимно однозначным соответствием символов, полученная String и эта String могут отличаться по длине. Примеры зависимых от локали и 1:М преобразований регистров приведены в следующей таблице:
| Код языка локали | Строчные символы | Заглавные символы | Описание |
|---|---|---|---|
| tr (турецкий) | \u0069 | \u0130 | маленькая буква i -> большая буква I с точкой сверху |
| tr (турецкий) | \u0131 | \u0049 | маленькая буква i без точки -> большая буква I |
| (все) | \u00df | \u0053 \u0053 | маленькая буква острое s -> две буквы: SS |
| (все) | Fahrvergnügen | FAHRVERGNÜGEN |
- Параметры:
-
locale- использование правил преобразования регистров для этой локали - Возвращает:
- значение
String, преобразованное в верхний регистр. - С:
- 1.1
- См. также:
toUpperCase
public String toUpperCase()
String в верхний регистр, используя правила локали по умолчанию. Этот метод эквивалентен toUpperCase(Locale.getDefault()).- Примечание API:
- Этот метод чувствителен к локали и может давать неожиданные результаты, если используется для строк, которые предназначены для интерпретации независимо от локали. Примерами являются идентификаторы языков программирования, ключи протоколов и теги HTML. Например,
"title".toUpperCase()в турецкой локали возвращает"T\u0130TLE", где '\u0130' — символ ЗАГЛАВНАЯ БУКВА I С ТОЧКОЙ СВЕРХУ. Чтобы получить правильные результаты для строк, нечувствительных к локали, используйтеtoUpperCase(Locale.ROOT). - Возвращает:
- значение
String, преобразованное в верхний регистр. - См. также:
trim
public String trim()
'U+0020' (символ пробела). Если этот String объект представляет пустую последовательность символов, или первый и последний символы последовательности символов, представленной этим объектом String, оба имеют коды, не являющиеся пробелами (как определено выше), то возвращается ссылка на этот объект String.
В противном случае, если все символы в этой строке являются пробелами (как определено выше), то возвращается объект String, представляющий пустую строку.
В противном случае, пусть k — индекс первого символа в строке, код которого не является пробелом (как определено выше), и пусть m — индекс последнего символа в строке, код которого не является пробелом (как определено выше). Возвращается объект String, представляющий подстроку этой строки, начинающуюся с символа с индексом k и заканчивающуюся символом с индексом m — то есть, результат this.substring(k, m + 1).
Этот метод может использоваться для обрезки пробелов (как определено выше) с начала и конца строки.
- Возвращает:
- строку, значение которой равно этой строке, со всеми начальными и конечными пробелами удалены, или эта строка, если у неё нет начальных или конечных пробелов.
strip
public String strip()
Если этот String объект представляет пустую строку или если все кодовые точки в этой строке являются пробелами, возвращается пустая строка.
В противном случае возвращается подстрока этой строки, начинающаяся с первой кодовой точки, которая не является пробелом, до последней кодовой точки, которая не является пробелом включительно.
Этот метод может использоваться для удаления пробелов с начала и конца строки.
- Возвращает:
- строка, значение которой равно этой строке, со всеми начальными и конечными пробелами удалены
- С:
- 11
- См. также:
stripLeading
public String stripLeading()
Если этот String объект представляет пустую строку или если все кодовые точки в этой строке являются пробелами, возвращается пустая строка.
В противном случае возвращается подстрока этой строки, начинающаяся с первой кодовой точки, которая не является пробелом, до последней кодовой точки этой строки включительно.
Этот метод может использоваться для удаления пробелов с начала строки.
- Возвращает:
- строка, значение которой равно этой строке, со всеми начальными пробелами удалены
- С:
- 11
- См. также:
stripTrailing
public String stripTrailing()
Если этот String объект представляет пустую строку или если все символы в этой строке являются пробелами, возвращается пустая строка.
В противном случае возвращается подстрока этой строки, начинающаяся с первой кодовой точки этой строки и заканчивающаяся последней кодовой точкой, которая не является пробелом включительно.
Этот метод может использоваться для удаления пробелов с конца строки.
- Возвращает:
- строка, значение которой равно этой строке, со всеми конечными пробелами удалены
- С:
- 11
- См. также:
isBlank
public boolean isBlank()
true если строка пустая или содержит только пробелы, в противном случае false.- Возвращает:
-
trueесли строка пустая или содержит только пробелы, в противном случаеfalse - С:
- 11
- См. также:
lines
public Stream<String> lines()
Разделитель строки — это один из следующих: символ новой строки "\n" (U+000A), символ возврата каретки "\r" (U+000D) или символ возврата каретки, непосредственно за которым следует символ новой строки "\r\n" (U+000D U+000A).
Строка — это либо последовательность нуля или более символов, за которой следует разделитель строки, либо последовательность одного или более символов, за которой следует конец строки. Строка не включает разделитель строки.
Поток, возвращаемый этим методом, содержит строки из этой строки в том порядке, в котором они встречаются.
- Примечание API:
- Это определение строки подразумевает, что пустая строка имеет ноль строк и что пустая строка не следует за разделителем строки в конце строки.
- Примечание реализации:
- Этот метод обеспечивает лучшую производительность, чем split("\R"), предоставляя элементы лениво и быстрее ища новые разделители строк.
- Возвращает:
- поток строк, извлеченных из этой строки
- С:
- 11
indent
public String indent(int n)
n, и нормализует символы окончания строки. Эта строка концептуально разделена на строки с помощью lines(). Затем каждая строка корректируется, как описано ниже, а затем дополняется символом новой строки "\n" (U+000A). Полученные строки конкатенируются и возвращаются.
Если n > 0 , то n пробелов (U+0020) вставляются в начало каждой строки.
Если n < 0 , то до n символов пробела удаляются из начала каждой строки. Если в данной строке недостаточно символов пробела, то удаляются все ведущие символы пробела. Каждый символ пробела рассматривается как один символ. В частности, символ табуляции "\t" (U+0009) рассматривается как один символ; он не расширяется.
Если n == 0 , то строка остается без изменений. Однако символы окончания строки всё равно нормализуются.
- Parameters:
-
n- количество ведущих символов пробела для добавления или удаления - Returns:
- строка с отступами, измененными и нормализованными символами окончания строки
- Since:
- 12
- See Also:
stripIndent
public String stripIndent()
Случайные пробелы часто присутствуют в блоке текста для выравнивания содержимого с открывающим разделителем. Например, в следующем коде точки представляют случайные пробелы:
Этот метод рассматривает случайные пробелы как отступы, которые следует удалить, создавая строку, которая сохраняет относительные отступы содержимого. Использование | для визуализации начала каждой строки в строке:String html = """ ..............<html> .............. <body> .............. <p>Hello, world</p> .............. </body> ..............</html> ..............""";
Сначала извлекаются отдельные строки этой строки. Строка — это последовательность нуля или более символов, за которой следует либо символ окончания строки, либо конец строки. Если в строке есть хотя бы один символ окончания строки, последняя строка состоит из символов между последним символом окончания строки и концом строки. В противном случае, если в строке нет символов окончания строки, последняя строка — это начало строки до конца строки, то есть вся строка. Строка не включает символ окончания строки.|<html> | <body> | <p>Hello, world</p> | </body> |</html>
Затем определяется минимальный отступ (min) следующим образом:
-
Для каждой непустой строки (как определено в
isBlank()) подсчитываются ведущие символы пробела. -
Ведущие символы пробела в последней строке также подсчитываются, даже если пустая.
Значение min — это наименьшее из этих подсчетов.
Для каждой непустой строки удаляются min ведущих символов пробела, а любые trailing символы пробела удаляются. Пустые строки заменяются пустой строкой.
Наконец, строки объединяются в новую строку с использованием символа LF "\n" (U+000A) для разделения строк.
- API Note:
- Основная цель этого метода — максимально сдвинуть блок строк влево, сохранив относительные отступы. Таким образом, строки, которые были отформатированы наименее, не будут иметь ведущих символов пробела. Результат будет иметь то же количество символов окончания строки, что и в этой строке. Если эта строка заканчивается символом окончания строки, то результат будет заканчиваться символом окончания строки.
- Implementation Requirements:
- Этот метод рассматривает все символы пробела как имеющие одинаковую ширину. Пока отступы каждой строки последовательно состоят из одних и тех же последовательностей символов, результат будет таким, как описано выше.
- Returns:
- строка с удаленными случайными отступами и нормализованными символами окончания строки
- Since:
- 15
- See Also:
translateEscapes
public String translateEscapes()
Экранированные последовательности переводятся следующим образом;
| Экранирование | Имя | Перевод |
|---|---|---|
\b | возврат | U+0008 |
\t | горизонтальная табуляция | U+0009 |
\n | новая строка | U+000A |
\f | форма подачи | U+000C |
\r | возврат каретки | U+000D |
\s | пробел | U+0020 |
\" | двойная кавычка | U+0022 |
\' | одинарная кавычка | U+0027 |
\\ | обратная косая черта | U+005C |
\0 - \377 | восьмеричный код | эквиваленты кодовых точек |
\<line-terminator> | продолжение | отбросить |
- Implementation Note:
- Этот метод не переводит Unicode-экранирования, такие как "
\u2022". Unicode-экранирования переводятся компилятором Java при чтении входных символов и не являются частью спецификации строковых литералов. - Returns:
- Строка с переведенными экранированными последовательностями.
- Throws:
-
IllegalArgumentException- при неправильном экранировании. - See Java Language Specification:
- 3.10.7 Экранированные последовательности
- Since:
- 15
transform
public <R> R transform(Function<? super String,? extends R> f)
this строке. Функция должна ожидать единственный строковый аргумент и возвращать R результат. Любое исключение, сгенерированное f.apply(), будет передано вызывающему методу.
- Type Parameters:
-
R- тип результата - Parameters:
-
f- функция для применения - Returns:
- результат применения функции к этой строке
- Since:
- 12
- See Also:
toString
public String toString()
- Specified by:
-
toStringв интерфейсеCharSequence - Overrides:
-
toStringв классеObject - Returns:
- сама строка.
chars
public IntStream chars()
int с нулевым расширением char значений из этой последовательности. Любой символ, который сопоставляется с заместительным кодом, передается необработанным.- Specified by:
-
charsв интерфейсеCharSequence - Returns:
- поток IntStream значений char из этой последовательности
- Since:
- 9
codePoints
public IntStream codePoints()
int значений, которые затем передаются в поток.- Specified by:
-
codePointsв интерфейсеCharSequence - Returns:
- поток IntStream значений кодовых точек Unicode из этой последовательности
- Since:
- 9
toCharArray
public char[] toCharArray()
- Returns:
- новый выделенный массив символов, длина которого равна длине этой строки, и содержимое которого инициализировано для хранения последовательности символов, представленной этой строкой.
форматировать
public static String format(String format, Object... args)
Используемый язык всегда — тот, который возвращается Locale.getDefault(Locale.Category) со специфицированной категорией FORMAT.
- Параметры:
-
format- строка формата -
args- Аргументы, на которые ссылаются спецификаторы формата в строке формата. Если аргументов больше, чем спецификаторов формата, лишние аргументы игнорируются. Количество аргументов переменное и может быть нулевым. Максимальное количество аргументов ограничено максимальным размером массива Java, как определено в Спецификации виртуальной машины Java. Поведение с аргументомnullзависит от преобразования. - Возвращает:
- Отформатированную строку
- Исключения:
-
IllegalFormatException- Если строка формата содержит некорректный синтаксис, спецификатор формата несовместим с предоставленными аргументами, недостаточно аргументов для строки формата или другие некорректные условия. Подробное описание всех возможных ошибок форматирования см. в разделе Детали спецификации класса formatter. - С:
- 1.5
- См. также:
форматировать
public static String format(Locale l, String format, Object... args)
- Параметры:
-
l- язык для применения при форматировании. Еслиlравенnull, локализация не применяется. -
format- строка формата -
args- Аргументы, на которые ссылаются спецификаторы формата в строке формата. Если аргументов больше, чем спецификаторов формата, лишние аргументы игнорируются. Количество аргументов переменное и может быть нулевым. Максимальное количество аргументов ограничено максимальным размером массива Java, как определено в Спецификации виртуальной машины Java. Поведение с аргументомnullзависит от преобразования. - Возвращает:
- Отформатированную строку
- Исключения:
-
IllegalFormatException- Если строка формата содержит некорректный синтаксис, спецификатор формата несовместим с предоставленными аргументами, недостаточно аргументов для строки формата или другие некорректные условия. Подробное описание всех возможных ошибок форматирования см. в разделе Детали спецификации класса formatter - С:
- 1.5
- См. также:
форматированный
public String formatted(Object... args)
- Требования к реализации:
- Этот метод эквивалентен
String.format(this, args). - Параметры:
-
args- Аргументы, на которые ссылаются спецификаторы формата в этой строке. - Возвращает:
- Отформатированную строку
- С:
- 15
- См. также:
valueOf
public static String valueOf(Object obj)
Object.- Параметры:
-
obj- объектObject. - Возвращает:
- Если аргумент
null, возвращается строка, равная"null"; в противном случае возвращается значениеobj.toString(). - См. также:
valueOf
public static String valueOf(char[] data)
char массива. Содержимое символьного массива копируется; последующие изменения символьного массива не влияют на возвращаемую строку.- Параметры:
-
data- символьный массив. - Возвращает:
- строка, содержащая символы символьного массива.
valueOf
public static String valueOf(char[] data, int offset, int count)
char. Аргумент offset — индекс первого символа подмассива. Аргумент count указывает длину подмассива. Содержимое подмассива копируется; последующие изменения символьного массива не влияют на возвращаемую строку.
- Параметры:
-
data- символьный массив. -
offset- начальный смещение подмассива. -
count- длина подмассива. - Возвращает:
- строка, содержащая символы указанного подмассива символьного массива.
- Исключения:
-
IndexOutOfBoundsException- еслиoffsetотрицательно, илиcountотрицательно, илиoffset+countбольше, чемdata.length.
copyValueOf
public static String copyValueOf(char[] data, int offset, int count)
valueOf(char[], int, int).- Параметры:
-
data- символьный массив. -
offset- начальный смещение подмассива. -
count- длина подмассива. - Возвращает:
- строка, содержащая символы указанного подмассива символьного массива.
- Исключения:
-
IndexOutOfBoundsException- еслиoffsetотрицательно, илиcountотрицательно, илиoffset+countбольше, чемdata.length.
copyValueOf
public static String copyValueOf(char[] data)
valueOf(char[]).- Параметры:
-
data- символьный массив. - Возвращает:
- строка, содержащая символы символьного массива.
valueOf
public static String valueOf(boolean b)
boolean.- Параметры:
-
b- значениеboolean. - Возвращает:
- Если аргумент
true, возвращается строка, равная"true"; в противном случае, возвращается строка, равная"false".
valueOf
public static String valueOf(char c)
char.- Параметры:
-
c- символchar. - Возвращает:
- строка длиной
1содержащая в качестве единственного символа аргументc.
valueOf
public static String valueOf(int i)
int. Представление точно такое же, как возвращается методом Integer.toString с одним аргументом.
- Параметры:
-
i- целое числоint. - Возвращает:
- строковое представление аргумента
int. - См. также:
valueOf
public static String valueOf(long l)
long. Представление точно такое же, как возвращается методом Long.toString с одним аргументом.
- Параметры:
-
l- целое число с плавающей точкойlong. - Возвращает:
- строковое представление аргумента
long. - См. также:
valueOf
public static String valueOf(float f)
float. Представление точно такое же, как возвращается методом Float.toString с одним аргументом.
- Параметры:
-
f- число с плавающей точкойfloat. - Возвращает:
- строковое представление аргумента
float. - См. также:
valueOf
public static String valueOf(double d)
double. Представление точно такое же, как возвращается методом Double.toString с одним аргументом.
- Параметры:
-
d- число с плавающей точкойdouble. - Возвращает:
- строковое представление аргумента
double. - См. также:
intern
public String intern()
Пул строк, изначально пустой, поддерживается классом String.
При вызове метода intern, если пул уже содержит строку, равную этому String объекту, как определено методом equals(Object), то возвращается строка из пула. В противном случае, этот String объект добавляется в пул, и возвращается ссылка на этот String объект.
Из этого следует, что для любых двух строк s и t, s.intern() == t.intern() равна true тогда и только тогда, когда s.equals(t) равна true.
Все литералы строк и строковые константные выражения интернируются. Литералы строк определены в разделе 3.10.5 спецификации языка Java.
- Возвращает:
- строку, содержащую те же данные, что и эта строка, но гарантированно взятую из пула уникальных строк.
repeat
public String repeat(int count)
count раз. Если эта строка пустая или count равен нулю, возвращается пустая строка.
- Параметры:
-
count- количество повторений - Возвращает:
- Строка, состоящая из этой строки, повторенной
countраз, или пустая строка, если эта строка пустая или count равен нулю - Исключения:
-
IllegalArgumentException- еслиcountотрицательное. - С:
- 11
describeConstable
public Optional<String> describeConstable()
Optional, содержащий номинальный дескриптор для этого экземпляра, который является самим экземпляром.- Определено в:
-
describeConstableв интерфейсеConstable - Возвращает:
Optional, описывающий экземпляр String- С:
- 12
resolveConstantDesc
public String resolveConstantDesc(MethodHandles.Lookup lookup)
ConstantDesc, результатом чего является сам экземпляр.- Определено в:
-
resolveConstantDescв интерфейсеConstantDesc - Параметры:
-
lookup- игнорируется - Возвращает:
- экземпляр String
- С:
- 12
© 1993, 2023, 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.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html