Интерфейс CharSequence
- Все известные подинтерфейсы:
Name
- Все известные реализующие классы:
-
CharBuffer,Segment,String,StringBuffer,StringBuilder
public interface CharSequence
CharSequence - это читаемая последовательность char значений. Этот интерфейс обеспечивает единообразный, только для чтения доступ к различным типам последовательностей char. Значение char представляет собой символ в Основной многоязычной плоскости (BMP) или суррогат. Подробности см. в Представление символов Unicode. Этот интерфейс не уточняет общие соглашения методов equals и hashCode. Результат проверки на равенство двух объектов, реализующих CharSequence, поэтому, как правило, не определен. Каждый объект может быть реализован другим классом, и нет гарантии, что каждый класс сможет проверить свои экземпляры на равенство с экземплярами другого. Поэтому не рекомендуется использовать произвольные экземпляры CharSequence в качестве элементов множества или ключей в словаре.
- С момента:
- 1.4
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
char |
charAt |
Возвращает значение char по указанному индексу. |
default IntStream |
chars() |
Возвращает поток int, расширяющий значения char из этой последовательности. |
default IntStream |
codePoints() |
Возвращает поток значений кодовых точек из этой последовательности. |
static int |
compare |
Сравнивает два экземпляра CharSequence лексикографически. |
default boolean |
isEmpty() |
Возвращает true, если эта последовательность символов пуста. |
int |
length() |
Возвращает длину этой последовательности символов. |
CharSequence |
subSequence |
Возвращает CharSequence, являющуюся подпоследовательностью этой последовательности. |
String |
toString() |
Возвращает строку, содержащую символы в этой последовательности в том же порядке, что и в этой последовательности. |
Подробное описание методов
length
int length()
char в последовательности.- Возвращает:
- количество
charв этой последовательности
charAt
char charAt(int index)
char по указанному индексу. Индекс изменяется от нуля до length() - 1. Первое значение char последовательности имеет индекс ноль, следующее - индекс один и так далее, как и для индексирования массивов. Если значение char, указанное индексом, является суррогатом, возвращается значение суррогата.
- Параметры:
-
index- индекс значенияcharдля возврата - Возвращает:
- указанное значение
char - Выбрасывает:
-
IndexOutOfBoundsException- если аргументindexотрицателен или не меньшеlength()
isEmpty
default boolean isEmpty()
true, если эта последовательность символов пуста.- Требования к реализации:
- В реализации по умолчанию возвращается результат вызова
length() == 0. - Возвращает:
-
trueеслиlength()равно0, в противном случаеfalse - С момента:
- 15
subSequence
CharSequence subSequence(int start, int end)
CharSequence, являющуюся подпоследовательностью этой последовательности. Подпоследовательность начинается со значения char по указанному индексу и заканчивается значением char с индексом end - 1. Длина (в char ) возвращаемой последовательности равна end - start, поэтому если start == end то возвращается пустая последовательность.- Параметры:
-
start- начальный индекс, включительно -
end- конечный индекс, исключая его - Возвращает:
- указанная подпоследовательность
- Выбрасывает:
-
IndexOutOfBoundsException- еслиstartилиendотрицательны, еслиendбольшеlength(), или еслиstartбольшеend
toString
String toString()
- Переопределяет:
-
toStringв классеObject - Возвращает:
- строка, состоящая из этой последовательности символов
chars
default IntStream chars()
int с расширением char значений из этой последовательности. Любой символ, отображающий суррогатную кодовую точку, передается без интерпретации. Поток привязывается к этой последовательности, когда начинается конечная операция потока (в частности, для изменяемых последовательностей разделитель потока является поздней привязкой). Если последовательность изменяется во время этой операции, результат не определен.
- Возвращает:
- IntStream значений char из этой последовательности
- С момента:
- 1.8
codePoints
default IntStream codePoints()
int, которые затем передаются в поток. Поток привязывается к этой последовательности, когда начинается конечная операция потока (в частности, для изменяемых последовательностей разделитель потока является поздней привязкой). Если последовательность изменяется во время этой операции, результат не определен.
- Возвращает:
- IntStream значений Unicode кодовых точек из этой последовательности
- С момента:
- 1.8
compare
static int compare(CharSequence cs1, CharSequence cs2)
CharSequence лексикографически. Возвращает отрицательное значение, ноль или положительное значение, если первая последовательность лексикографически меньше, равна или больше второй, соответственно. Лексикографическое упорядочение CharSequence определяется следующим образом. Рассмотрим CharSequence cs длиной len как последовательность значений char, cs[0] до cs[len-1]. Предположим, что k - это самый низкий индекс, по которому соответствующие значения char из каждой последовательности отличаются. Лексикографическое упорядочение последовательностей определяется численным сравнением значений char cs1[k] со cs2[k]. Если такого индекса k нет, то короче последовательность считается лексикографически меньше другой. Если последовательности имеют одинаковую длину, то последовательности считаются лексикографически равными.
- Параметры:
-
cs1- перваяCharSequence -
cs2- втораяCharSequence - Возвращает:
- значение
0если дваCharSequenceравны; отрицательное целое число, если перваяCharSequenceлексикографически меньше второй; или положительное целое число, если перваяCharSequenceлексикографически больше второй. - С момента:
- 11
© 1993, 2021, 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/17/docs/api/java.base/java/lang/CharSequence.html