Bucle for En Kotlin

ANUNCIO
Loading...

En este tutorial aprenderás sobre la sintaxis del bucle for en Kotlin para iterar sobre colecciones de elementos. Luego verás ejemplos recorrer estructuras de datos como rangos, arreglos y strings.

Sintaxis Del Bucle for

El bucle for en Kotlin se asemeja a las sentencias foreach de otros lenguajes, donde se provee un iterador (iterator()) para recorrer los elementos de datos estructurados.

La sentencia se compone de una declaración de variables, una expresión contenedora, compuesta por el operador in y los datos estructurados (arreglos, listas, etc.), y el cuerpo del bucle.

Sintaxis de for en Kotlin

Ejemplo: Imprimir la cuenta del uno al cinco.

fun main(){ for(i in 1..5){ println("Contando $i") } }
Lenguaje del código: Kotlin (kotlin)

Como ves, la variable declarada es i y la estructura de datos es un rango del 1 al 5. Lo que significa que el cuerpo se ejecutará cinco veces.

El valor de i es accesible desde el cuerpo, por lo que puedes imprimir su contenido con println():

Contando 1 Contando 2 Contando 3 Contando 4 Contando 5

Aunque usamos el cuerpo como un bloque de código, al ser una sola sentencia, puedes omitir las llaves.

for (i in 1..5) println("Contando $i")
Lenguaje del código: Kotlin (kotlin)

A continuación, verás algunos ejemplos de iteraciones sobre colecciones.

Recorrer Un Rango

El siguiente es un ejemplo que recorre el rango de caracteres [‘a’,’f’]. Verás varios bucles for usando progresiones (por escribir) con el fin de manipular el ritmo y orden de las iteraciones.

fun main() { // iteración regular for (char in 'a'..'f') print(char) // iteración con avance de 2 println() for (char in 'a'..'f' step 2) print(char) println() // iteración en reversa for (char in 'f' downTo 'a') print(char) // iteración excluyendo el límite superior println() for (char in 'a' until 'f') print(char) }
Lenguaje del código: Kotlin (kotlin)

La salida del programa será:

abcdef ace fedcba abcde

Recorrer Un Array

Para iterar a lo largo de un arreglo con el bucle for, debemos usar como base los índices de sus elementos.

Esto significa, que usamos en la declaración de variable el índice y luego expresamos su existencia sobre la propiedad rango entero indices.

Ejemplo: Crear un arreglo con cinco nombres de campeones e imprimir su índice y valor.

fun main() { val champions = arrayOf("Teemo", "Ahri", "Vayne", "Brand", "Kindred") for (i in champions.indices) { println("[$i, ${champions[i]}]") } }
Lenguaje del código: Kotlin (kotlin)

La salida será:

[0, Teemo] [1, Ahri] [2, Vayne] [3, Brand] [4, Kindred]
Lenguaje del código: JSON / JSON con comentarios (json)

Adicionalmente, Kotlin te permite reescribir la sentencia for anterior con el método withIndex(), el cual retorna en elementos IndexedValue, que contienen el índice y el valor.

Dichos valores pueden ser recibidos en un declaración de desestructuración de la forma (indice, valor). La cual es accesible desde el cuerpo del bucle.

fun main() { val champions = arrayOf("Teemo", "Ahri", "Vayne", "Brand", "Kindred") // Desestructuración de elementos de Array for ((i, v) in champions.withIndex()) { println("[$i, $v]") } }
Lenguaje del código: Kotlin (kotlin)

Recorrer Un String

También es posible iterar sobre un string con el bucle for. La sentencia interpretará la posición y valor de cada carácter.

Ejemplo: Imprimir el string "Develou" en forma vertical.

fun main(){ for(c in "Develou"){ println(c) } }
Lenguaje del código: Kotlin (kotlin)

En la salida de la aplicación tendrás:

D e v e l o u

¿Qué Sigue?

Como ya sabes usar el bucle for en Kotlin, ahora puedes avanzar a ver ejemplos de uso para el bucle while.

¿Ha sido útil esta publicación?