Spec-Zone.ru › Kotlin 2

BooleanIterator

kotlin-stdlib/kotlin.collections/BooleanIterator

Начиная с Kotlin: 1.0

abstract class BooleanIterator : Iterator<Boolean> 

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

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

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

class BooleanContainer(private val data: BooleanArray) {

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

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

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

for (element in BooleanContainer(booleanArrayOf(true, false, true))) {
... handle element ...
}

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

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

BooleanIterator
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)

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

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(): Boolean

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

nextBoolean

Начиная с Kotlin: 1.0

abstract fun nextBoolean(): Boolean

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

withIndex

Начиная с Kotlin: 1.0

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

Возвращает итератор, который оборачивает каждый элемент, созданный исходным итератором, в 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/-boolean-iterator/index.html

Spec-Zone.ru

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