阅读(3397) (7)

鸿蒙OS CharSequence

2022-04-28 15:48:24 更新

CharSequence

public interface CharSequence

CharSequence 是一个可读的 char 值序列。 此接口提供对许多不同类型的字符序列的统一只读访问。 char 值表示基本多语言平面 (BMP) 中的字符或代理项。

这个接口没有细化 equals 和 hashCode 方法的一般契约。 因此,比较实现 CharSequence 的两个对象的结果通常是未定义的。 每个对象都可以由不同的类实现,并且不能保证每个类都能够测试其实例与其他类的实例是否相等。 因此,将任意 CharSequence 实例用作集合中的元素或映射中的键是不合适的。

方法总结

修饰符和类型 方法 描述
char charAt(int index) 返回指定索引处的 char 值。
default IntStream chars() 返回一个 int 流,对该序列中的 char 值进行零扩展。
default IntStream codePoints() 从该序列返回代码点值流。
int length() 返回此字符序列的长度。
CharSequence subSequence(int start, int end) 返回作为此序列子序列的 CharSequence。
String toString() 以与此序列相同的顺序返回包含此序列中字符的字符串。

方法详情

length

int length()

返回此字符序列的长度。 长度是序列中 16 位字符的数量。

返回:

此序列中的字符数

charAt

char charAt(int index)

返回指定索引处的 char 值。 索引范围从零到 length() - 1。序列的第一个 char 值在索引 0 处,下一个在索引 1 处,依此类推,与数组索引一样。

如果索引指定的 char 值是代理项,则返回代理项值。

参数:

参数名称 参数描述
index 要返回的 char 值的索引

返回:

指定的字符值

Throws:

Throw名称 Throw描述
IndexOutOfBoundsException 如果 index 参数为负数或不小于 length()

subSequence

CharSequence subSequence(int start, int end)

返回作为此序列子序列的 CharSequence。 子序列以指定索引处的 char 值开始,以索引 end - 1 处的 char 值结束。返回序列的长度(以字符为单位)为 end - start,因此如果 start == end 则返回空序列 .

参数:

参数名称 参数描述
start 起始索引,包括
end 结束索引,独占

返回:

指定的子序列

Throws:

Throw名称 Throw描述
IndexOutOfBoundsException 如果 start 或 end 为负数,如果 end 大于 length(),或者如果 start 大于 end

toString

String toString()

以与此序列相同的顺序返回包含此序列中字符的字符串。 字符串的长度就是这个序列的长度。

覆盖:

类 Object 中的 toString

返回:

正好由这个字符序列组成的字符串

chars

default IntStream chars()

返回一个 int 流,对该序列中的 char 值进行零扩展。 任何映射到代理代码点的字符都会未经解释地传递。

如果在读取流时序列发生突变,则结果未定义。

返回:

来自此序列的 char 值的 IntStream

codePoints

default IntStream codePoints()

从该序列返回代码点值流。 序列中遇到的任何代理对都被组合起来,就像通过 Character#toCodePoint 一样,并将结果传递给流。 任何其他代码单元,包括普通 BMP 字符、不成对的代理和未定义的代码单元,都被零扩展为 int 值,然后将其传递给流。

如果在读取流时序列发生突变,则结果未定义。

返回:

来自此序列的 Unicode 代码点的 IntStream