Spec-Zone.ru › Kotlin 2

CharIterator

kotlin-stdlib/kotlin.collections/CharIterator

Начиная с Kotlin: 1.0

abstract class CharIterator : Iterator<Char> 

Итератор последовательности значений типа Char.

Это замена Iterator<Char>, предоставляющая специализированную версию метода next(): T: nextChar(): Char, а также специальную обработку компилятором для предотвращения преобразований упаковки, специфичных для платформы, в целях оптимизации производительности.

В следующем примере:

class CharContainer(private val data: CharArray) {

// CharIterator instead of Iterator<Char> in the signature
operator fun iterator(): CharIterator = object : CharIterator() {
private var idx = 0

override fun nextChar(): Char {
if (!hasNext()) throw NoSuchElementException()
return data[idx++]
}

override fun hasNext(): Boolean = idx < data.size
}
}

for (element in CharContainer(charArrayOf('1', '2', '3'))) {
... handle element ...
}

При итерации в цикле for преобразование с упаковкой не выполняется. Обратите внимание, что сам итератор всё равно будет создан.

Конструкторы

CharIterator
constructor()

Функции

asSequence

Начиная с Kotlin: 1.0

fun <T> Iterator<T>.asSequence(): Sequence<T>

Создаёт последовательность, возвращающую все элементы этого итератора. По этой последовательности можно пройти только один раз.

forEach

Начиная с Kotlin: 1.0

inline fun <T> Iterator<T>.forEach(operation: (T) -> Unit)

Выполняет заданную операцию для каждого элемента этого Iterator.

hasNext

Начиная с Kotlin: 1.0

expect abstract operator fun hasNext(): Boolean

Возвращает true, если в последовательности итерации есть ещё элементы.

iterator

Начиная с Kotlin: 1.0

inline operator fun <T> Iterator<T>.iterator(): Iterator<T>

Возвращает переданный итератор. Это позволяет использовать экземпляр итератора в цикле for.

next

Начиная с Kotlin: 1.0

operator override fun next(): Char

Возвращает следующий элемент последовательности.

nextChar

Начиная с Kotlin: 1.0

abstract fun nextChar(): Char

Возвращает следующий элемент последовательности без преобразования с упаковкой.

withIndex

Начиная с Kotlin: 1.0

fun <T> Iterator<T>.withIndex(): Iterator<IndexedValue<T>>

Возвращает Iterator, который оборачивает каждый элемент, полученный исходным итератором, в IndexedValue, содержащий индекс этого элемента и сам элемент.

© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-char-iterator/index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API