Ответ
CharSequence — это интерфейс в Java, представляющий последовательность символов. Он используется для работы с различными типами текстовых данных, такими как String, StringBuilder, SpannableString и др.
Ключевые особенности:
- Обобщает работу с текстом, не привязываясь к конкретной реализации.
- Имеет методы
length(),charAt(index),subSequence(start, end). - Оптимизирован для неизменяемых (String) и изменяемых (StringBuilder) данных.
Пример:
val text: CharSequence = "Hello" // String реализует CharSequence
val builder: CharSequence = StringBuilder("World")
fun printChars(sequence: CharSequence) {
for (i in 0 until sequence.length) {
println(sequence[i])
}
}
Использование:
Часто встречается в Android API (например, TextView.setText() принимает CharSequence, а не только String).