Module  java.base
软件包  java.lang

Interface CharSequence

  • All Known Subinterfaces:
    Name
    所有已知实现类:
    CharBufferSegmentStringStringBufferStringBuilder


    public interface CharSequence
    A CharSequencechar值的可读序列。 该接口提供对许多不同类型的char序列的统一的只读访问。 A char值表示基本多语言平面(BMP)或代理中的字符。 详见Unicode Character Representation

    此接口不会改进equalshashCode方法的一般合同。 因此,比较实现CharSequence两个对象的结果CharSequence是未定义的。 每个对象可以由不同的类实现,并且不能保证每个类都能够测试其实例以与另一个类相同。 因此,使用任意CharSequence实例作为集合中的元素或映射中的键是不合适的。

    从以下版本开始:
    1.4
    • 方法详细信息

      • length

        int length​()
        返回此字符序列的长度。 长度是序列中16位char的数量。
        结果
        这个序列中的数字为 char
      • charAt

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

        如果索引指定的char值为surrogate ,则返回替代值。

        参数
        index - 要返回的 char值的索引
        结果
        指定 char
        异常
        IndexOutOfBoundsException - 如果 index参数为负数或不小于 length()
      • subSequence

        CharSequence subSequence​(int start,
                                 int end)
        返回一个CharSequence ,这是这个序列的子序列。 该子序列与所述启动char指定索引处值和与所述结束char在索引值end - 1 返回序列的长度( char s)为end - start ,因此如果start == end返回一个空序列。
        参数
        start - 开始索引(含)
        end - 结束索引,独占
        结果
        指定的子序列
        异常
        IndexOutOfBoundsException - 如果 startend为负数,如果 end大于 length() ,或者如果 start大于 end
      • toString

        String toString​()
        以与此顺序相同的顺序返回包含此序列中的字符的字符串。 字符串的长度将是此序列的长度。
        重写:
        toString在类 Object
        结果
        一个由这个字符序列组成的字符串
      • chars

        default IntStream chars​()
        返回一个int的数据流,从这个序列中扩展char值。 映射到surrogate code point的任何字符都通过未解释的方式传递。

        当终端流操作开始时(特别地,对于可变序列,流的分流器是late-binding ),流与该序列绑定。 如果序列在该操作期间被修改,则结果是未定义的。

        结果
        这个序列中的char值的IntStream
        从以下版本开始:
        1.8
      • codePoints

        default IntStream codePoints​()
        从此序列返回码流值。 在序列中遇到的任何代理对被组合,如同通过Character.toCodePoint一样 ,并将结果传递给流。 任何其他代码单元,包括普通的BMP字符,未配对代理和未定义的代码单元,都将零扩展到int值,然后传递给流。

        当终端流操作开始时(特别地,对于可变序列,流的分流器是late-binding ),流与该序列绑定。 如果序列在该操作期间被修改,则结果是未定义的。

        结果
        Unicode序列的IntStream从这个序列中指向
        从以下版本开始:
        1.8