CharSequence

interface CharSequence
java.lang.CharSequence

A CharSequence is a readable sequence of char values. This interface provides uniform, read-only access to many different kinds of char sequences. A char value represents a character in the Basic Multilingual Plane (BMP) or a surrogate. Refer to Unicode Character Representation for details.

This interface does not refine the general contracts of the and methods. The result of comparing two objects that implement CharSequence is therefore, in general, undefined. Each object may be implemented by a different class, and there is no guarantee that each class will be capable of testing its instances for equality with those of the other. It is therefore inappropriate to use arbitrary CharSequence instances as elements in a set or as keys in a map.

Summary

Public methods
abstract Int

Returns the length of this character sequence.

open IntStream!

Returns a stream of code point values from this sequence.

open IntStream!

Returns a stream of int zero-extending the char values from this sequence.

abstract Char
charAt(index: Int)

Returns the char value at the specified index.

abstract CharSequence!
subSequence(start: Int, end: Int)

Returns a CharSequence that is a subsequence of this sequence.

Public methods

length

abstract fun length(): Int

Returns the length of this character sequence. The length is the number of 16-bit chars in the sequence.

Return
Int: the number of chars in this sequence

codePoints

added in API level 1.8
open fun codePoints(): IntStream!

Returns a stream of code point values from this sequence. Any surrogate pairs encountered in the sequence are combined as if by and the result is passed to the stream. Any other code units, including ordinary BMP characters, unpaired surrogates, and undefined code units, are zero-extended to int values which are then passed to the stream.

If the sequence is mutated while the stream is being read, the result is undefined.
Requires API level 24 (Android 7.0, Nougat)

Return
IntStream!: an IntStream of Unicode code points from this sequence

chars

added in API level 1.8
open fun chars(): IntStream!

Returns a stream of int zero-extending the char values from this sequence. Any char which maps to a surrogate code point is passed through uninterpreted.

If the sequence is mutated while the stream is being read, the result is undefined.
Requires API level 24 (Android 7.0, Nougat)

Return
IntStream!: an IntStream of char values from this sequence

charAt

abstract fun charAt(index: Int): Char

Returns the char value at the specified index. An index ranges from zero to length() - 1. The first char value of the sequence is at index zero, the next at index one, and so on, as for array indexing.

If the char value specified by the index is a surrogate, the surrogate value is returned.

Parameters
index Int: the index of the char value to be returned
Return
Char: the specified char value
Exceptions
IndexOutOfBoundsException if the index argument is negative or not less than length()

subSequence

abstract fun subSequence(start: Int, end: Int): CharSequence!

Returns a CharSequence that is a subsequence of this sequence. The subsequence starts with the char value at the specified index and ends with the char value at index end - 1. The length (in chars) of the returned sequence is end - start, so if start == end then an empty sequence is returned.

Parameters
start Int: the start index, inclusive
end Int: the end index, exclusive
Return
CharSequence!: the specified subsequence
Exceptions
IndexOutOfBoundsException if start or end are negative, if end is greater than length(), or if start is greater than end