Spec-Zone.ru › OpenJDK 21

Интерфейс CharSequence

Все известные подинтерфейсы:
Name
Все известные реализующие классы:
CharBuffer, Segment, String, StringBuffer, StringBuilder
public interface CharSequence
Последовательность символов для чтения — это последовательность значений символов. Этот интерфейс предоставляет унифицированный, только для чтения доступ к различным типам последовательностей символов. Значение символа представляет собой символ в базовой многоязычной плоскости (BMP) или суррогат. Для получения подробной информации см. Представление символов Юникод.

Этот интерфейс не уточняет общие соглашения методов equals и hashCode. Поэтому результат проверки равенства двух объектов, реализующих CharSequence, в общем случае не определен. Каждый объект может быть реализован различным классом, и нет гарантии, что каждый класс сможет проверить свои экземпляры на равенство с экземплярами других классов. Поэтому нецелесообразно использовать произвольные экземпляры CharSequence в качестве элементов множества или ключей в словаре.

С:
1.4

Краткое описание методов

Модификатор и тип Метод Описание
char charAt(int index)
Возвращает значение символа по указанному индексу.
default IntStream chars()
Возвращает поток значений символов, расширяющих значения символов в этой последовательности до нуля.
default IntStream codePoints()
Возвращает поток значений кодовых точек из этой последовательности.
static int compare(CharSequence cs1, CharSequence cs2)
Сравнивает два экземпляра CharSequence лексикографически.
default boolean isEmpty()
Возвращает true, если эта последовательность символов пуста.
int length()
Возвращает длину этой последовательности символов.
CharSequence subSequence(int start, int end)
Возвращает последовательность, которая является подпоследовательностью этой последовательности.
String toString()
Возвращает строку, содержащую символы в этой последовательности в том же порядке, что и в этой последовательности.

Подробное описание методов

length

int length()
Возвращает длину этой последовательности символов. Длина — это количество 16-разрядных символов в последовательности.
Возвращает:
число символов в этой последовательности

charAt

char charAt(int index)
Возвращает значение символа по указанному индексу. Индекс изменяется от нуля до length() - 1. Первый символ последовательности находится по индексу ноль, следующий — по индексу один и так далее, как и при индексировании массивов.

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

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

isEmpty

default boolean isEmpty()
Возвращает true, если эта последовательность символов пуста.
Требования к реализации:
Значение по умолчанию возвращает результат вызова length() == 0.
Возвращает:
true если length() равно 0, в противном случае false
С:
15

subSequence

CharSequence subSequence(int start, int end)
Возвращает подпоследовательность, которая является подпоследовательностью этой последовательности. Подпоследовательность начинается со значения символа по указанному индексу и заканчивается значением символа по индексу end - 1. Длина (в символах) возвращаемой последовательности составляет end - start, поэтому если start == end, возвращается пустая последовательность.
Параметры:
start - начальный индекс (включительно)
end - конечный индекс (исключительно)
Возвращает:
указанную подпоследовательность
Исключения:
IndexOutOfBoundsException - если start или end отрицательны, если end больше length(), или если start больше end

toString

String toString()
Возвращает строку, содержащую символы в этой последовательности в том же порядке, что и в этой последовательности. Длина строки будет равна длине этой последовательности.
Переопределяет:
toString в классе Object
Возвращает:
строка, состоящая ровно из этой последовательности символов

chars

default IntStream chars()
Возвращает поток значений символов, расширяющих значения символов в этой последовательности до нуля. Любой символ, который отображается на суррогатную кодовую точку, передается без интерпретации.

Поток привязывается к этой последовательности при начале терминальной операции потока (в частности, для изменяемых последовательностей, итератор потока привязывается поздно). Если последовательность изменяется во время этой операции, результат неопределен.

Возвращает:
поток IntStream из значений char из этой последовательности
С:
1.8

codePoints

default IntStream codePoints()
Возвращает поток значений кодовых точек из этой последовательности. Любые пары суррогатов, встречающиеся в последовательности, объединяются так, как будто они получены с помощью Character.toCodePoint, и результат передается в поток. Любые другие кодовые единицы, включая обычные символы BMP, непарные суррогаты и неопределенные кодовые единицы, расширяются нулями до значений int и затем передаются в поток.

Поток привязывается к этой последовательности при начале терминальной операции потока (в частности, для изменяемых последовательностей, итератор потока привязывается поздно). Если последовательность изменяется во время этой операции, результат неопределен.

Возвращает:
поток IntStream из значений кодовых точек Юникод из этой последовательности
С:
1.8

compare

static int compare(CharSequence cs1, CharSequence cs2)
Сравнивает два экземпляра CharSequence лексикографически. Возвращает отрицательное значение, ноль или положительное значение, если первая последовательность лексикографически меньше, равна или больше второй соответственно.

Лексикографический порядок CharSequence определяется следующим образом. Рассмотрим последовательность символов cs длиной len как последовательность значений char, cs[0] до cs[len-1]. Предположим, что k — это наименьший индекс, при котором соответствующие значения char из каждой последовательности отличаются. Лексикографический порядок последовательностей определяется числовым сравнением значений char cs1[k] и cs2[k]. Если такого индекса k нет, короче последовательность считается лексикографически меньше другой. Если последовательности имеют одинаковую длину, они считаются лексикографически равными.

Параметры:
cs1 - первая последовательность
cs2 - вторая последовательность
Возвращает:
значение 0 если две последовательности равны; отрицательное целое число, если первая последовательность лексикографически меньше второй; или положительное целое число, если первая последовательность лексикографически больше второй.
С:
11

© 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/CharSequence.html

Spec-Zone.ru

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