Iterator

Common
JVM
JS
Native
1.0
interface Iterator<out T>

An iterator over a collection or another entity that can be represented as a sequence of elements. Allows to sequentially access the elements.

Functions

Common
JVM
JS
Native
1.0

hasNext

Returns true if the iteration has more elements.

abstract operator fun hasNext(): Boolean
Common
JVM
JS
Native
1.0

next

Returns the next element in the iteration.

abstract operator fun next(): T

Extension Functions

Common
JVM
JS
Native
1.0

asSequence

Creates a sequence that returns all elements from this iterator. The sequence is constrained to be iterated only once.

fun <T> Iterator<T>.asSequence(): Sequence<T>
Common
JVM
JS
Native
1.0

forEach

Performs the given operation on each element of this Iterator.

fun <T> Iterator<T>.forEach(operation: (T) -> Unit)
Common
JVM
JS
Native
1.0

iterator

Returns the given iterator itself. This allows to use an instance of iterator in a for loop.

operator fun <T> Iterator<T>.iterator(): Iterator<T>
Common
JVM
JS
Native
1.0

withIndex

Returns an Iterator that wraps each element produced by the original iterator into an IndexedValue containing the index of that element and the element itself.

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

Inheritors

Common
JVM
JS
Native
1.0

AbstractIterator

A base class to simplify implementing iterators so that implementations only have to implement computeNext to implement the iterator, calling done when the iteration is complete.

abstract class AbstractIterator<T> : Iterator<T>
Common
JVM
JS
Native
1.0

BooleanIterator

An iterator over a sequence of values of type Boolean.

abstract class BooleanIterator : Iterator<Boolean>
Common
JVM
JS
Native
1.0

ByteIterator

An iterator over a sequence of values of type Byte.

abstract class ByteIterator : Iterator<Byte>
Common
JVM
JS
Native
1.0

CharIterator

An iterator over a sequence of values of type Char.

abstract class CharIterator : Iterator<Char>
Common
JVM
JS
Native
1.0

DoubleIterator

An iterator over a sequence of values of type Double.

abstract class DoubleIterator : Iterator<Double>
Common
JVM
JS
Native
1.0

FloatIterator

An iterator over a sequence of values of type Float.

abstract class FloatIterator : Iterator<Float>
Common
JVM
JS
Native
1.0

IntIterator

An iterator over a sequence of values of type Int.

abstract class IntIterator : Iterator<Int>
Common
JVM
JS
Native
1.0

ListIterator

An iterator over a collection that supports indexed access.

interface ListIterator<out T> : Iterator<T>
Common
JVM
JS
Native
1.0

LongIterator

An iterator over a sequence of values of type Long.

abstract class LongIterator : Iterator<Long>
Common
JVM
JS
Native
1.0

MutableIterator

An iterator over a mutable collection. Provides the ability to remove elements while iterating.

interface MutableIterator<out T> : Iterator<T>
Common
JVM
JS
Native
1.0

ShortIterator

An iterator over a sequence of values of type Short.

abstract class ShortIterator : Iterator<Short>
Common
JVM
JS
Native
1.3

UByteIterator

An iterator over a sequence of values of type UByte.

abstract class UByteIterator : Iterator<UByte>
Common
JVM
JS
Native
1.3

UIntIterator

An iterator over a sequence of values of type UInt.

abstract class UIntIterator : Iterator<UInt>
Common
JVM
JS
Native
1.3

ULongIterator

An iterator over a sequence of values of type ULong.

abstract class ULongIterator : Iterator<ULong>
Common
JVM
JS
Native
1.3

UShortIterator

An iterator over a sequence of values of type UShort.

abstract class UShortIterator : Iterator<UShort>