Bucles o estructuras de repetición I: for



Además de las instrucciones condicionales (if, when), otras estructuras para controlar el flujo de un programa son las estructuras de repetición, que consisten en una serie de instrucciones para generar bucles, y fundamentalmente son las instrucciones for y while, centrándonos ahora en la primera.

for genera un bucle que se repite sobre cualquier objeto que proporciona un iterador, con esta sintaxis (el cuerpo se escribe como un bloque entre llaves cuando ocupa más de una línea):
for (item in collection) print(item)

for (item: Int in ints) {
    // ...
    // ...
}
Por ejemplo:
val items = listOf("manzana", "plátano", "kiwi")

for (item in items) println(item)

for (index in items.indices) {
    println("En la posición ${index + 1} la fruta es ${items[index]}")
}
Podemos iterar sobre un rango de números con una expresión de rango (para delante y para atrás, y cambiando el paso):
for (i in 1..3) {
    println(i)
}

for (i in 6 downTo 0 step 2) {
    println(i)
}
Y para recorrer un array o una lista con un índice, se puede hacer de esta manera:
val array = arrayOf("a", "b", "c")
for (i in array.indices) {
    println(array[i])
}
Otra opción es usar la función withIndex:
val array = arrayOf("a", "b", "c")
for ((index, value) in array.withIndex()) {
    println("el elemento $index es $value")
}
En la entrada Programa para obtener los factores de un número puedes ver un ejemplo que utiliza for para iterar sobre un rango y sobre una lista.

Comentarios

Entradas populares

Recursos gratis para aprender Kotlin

I/O: entrada y salida de datos en consola

Lectura y escritura de archivos