Las matrices de Kotlin

Una matriz es una estructura de datos con valores que están almacenados de forma contigua en memoria. Todos los elementos son referenciados por un mismo nombre y tienen el mismo tipo de dato.

Los elementos estarán indexados tomando como base el 0 y el tamaño declarado del arreglo será fijo.

Arreglos en Kotlin
Kotlin usa la clase genérica Array para representar arreglos. Crear instancias con un tipo parametrizado usa los siguientes métodos:
  • arrayOf(vararg elements:T): recibe un argumento variables con elementos de tipo T y retorna el arreglo que los contiene.
  • arrayOfNulls(size:Int): crea un arreglo de tamaño size con elementos de tipo T e inicializa los valores con null
  • emptyArray(): crear un arreglo vacío con el tipo T
Por ejemplo: Considera que necesitas almacenar el valor de datos enteros en una matriz de la siguiente manera:
var matriz = arrayOf(
    intArrayOf(1,2,3),
    intArrayOf(4,5,6),
)
Con el código anterior hemos creado una matriz de dos dimensiones, estableciéndose las filas y las columnas de la siguiente manera: – El valor 1 pertenece la posición 0-0. – El valor 2 pertenece la posición 0-1. – El valor 3 pertenece la posición 0-2. – El valor 4 pertenece la posición 1-0. – El valor 5 pertenece la posición 1-1. – El valor 6 pertenece la posición 1-2. Una vez creado el array, ¿cómo recorremos dicho array? Lo hacemos usando dos bucles for anidados de la siguiente manera:
for (i in (0 until matriz.size)) {
    for (j in (0 until matriz[i].size)) {
        println("Posicion[$i][$j] : ${matriz[i][j]}")
    }
}
Podemos observar como usamos dos bucles for para imprimir tantos los índices como los valores, ya que la matriz es de 2 dimensiones, el bucle externo se encarga de recorrer las filas y el bucle interno se encarga de recorrer las columnas de cada fila.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies