En este post vamos a ver cómo declarar arreglos en Kotlin y cómo recorrerlos usando un ciclo for.
Recordemos que los arreglos no son más que colecciones de elementos del mismo tipo, a los que se accede a través de su índice.
Para declarar un arreglo en Kotlin se usa la función arrayOf
, y se indican los elementos del arreglo como argumentos a la función.
val arreglo = arrayOf(elemento1, elemento2, ...)
Los elementos pueden ser de cualquier tipo de dato soportado, pero todos deben ser del mismo tipo.
// Definir un arreglo con arrayOf
val nombres = arrayOf("Luis", "María José", "Fernando")
println(nombres[1]) // María José
Se puede definir el valor a través del índice de un arreglo:
arreglo[0] = valor
Y acceder al mismo de igual forma:
val elemento = arreglo[0]
Otra forma de crear un arreglo es a través de Array
, pasando la capacidad del mismo y una función de llenado.
La función de llenado es una función que recibe el índice del arreglo; y debe devolver un valor que será puesto en ese índice del arreglo.
// Declararlo con su longitud y una función de init
val arregloDeEnteros = Array(5, { indice -> indice + 1})
En el ejemplo de arriba estamos llenando el arreglo con números del 1 al 5, ya que es el valor del índice + 1.
Para recorrer un arreglo de Kotlin se usa un ciclo for
y el operador in
:
// Definir un arreglo con arrayOf
val nombres = arrayOf("Luis", "María José", "Fernando")
for (nombre in nombres){
println(nombre)
}
En este caso se recorre por el valor; si se desea recorrer a través del índice hay que iterar en arreglo.indices
:
// Definir un arreglo con arrayOf
val nombres = arrayOf("Luis", "María José", "Fernando")
for (indice in nombres.indices){
println("En el índice ${indice} tenemos a ${nombres[indice]}")
}
Para obtener la longitud de un arreglo accedemos a la propiedad size
:
// Acceder a longitud
val longitud = arregloDeEnteros.size
println("La longitud del arreglo es $longitud")
El siguiente código resume y junta todo lo explicado en el post:
fun main() {
// by parzibyte
// Definir un arreglo con arrayOf
val nombres = arrayOf("Luis", "María José", "Fernando")
println(nombres[1]) // María José
for (nombre in nombres){
println(nombre)
}
for (indice in nombres.indices){
println("En el índice ${indice} tenemos a ${nombres[indice]}")
}
// Declararlo con su longitud y una función de init
val arregloDeEnteros = Array(5, { indice -> indice + 1})
// Se puede modificar como cualquier arreglo
arregloDeEnteros[2] = 500
for (numero in arregloDeEnteros){
println(numero)
}
// Acceder a longitud
val longitud = arregloDeEnteros.size
println("La longitud del arreglo es $longitud")
}
Puedes probarlo y ejecutarlo aquí.
En este post te quiero compartir un código de C++ para listar y cancelar trabajos…
Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…
Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…
Esta semana estuve recreando la API del plugin para impresoras térmicas en Android (HTTP a…
Hoy te enseñaré a extraer la cadena base64 de una clave PEM usando una función…
Encender un foco con un Bot de Telegram es posible usando una tarjeta como la…
Esta web usa cookies.
Ver comentarios