Las matrices en Kotlin están representadas por la clase Array
, que tiene funciones get
y set
(que se convierten en []
convenciones de sobrecarga del operador), y la propiedad size
, junto con algunas otras funciones miembros útiles:
class Array<T> private constructor() { val size: Int operator fun get(index: Int): T operator fun set(index: Int, value: T): Unit operator fun iterator(): Iterator<T> // ... }
Para crear una matriz, podemos usar una función de la librería arrayOf()
y pasarle los valores del elemento, para que arrayOf(1, 2, 3)
cree una matriz [1, 2, 3]
. Alternativamente, la función arrayOfNulls()
de la librería se puede usar para crear una matriz de un tamaño determinado con elementos nulos.
Otra opción es usar el constructor Array
que toma el tamaño del arreglo y la función que puede devolver el valor inicial de cada elemento del arreglo dado su índice:
// Creates an Array<String> with values ["0", "1", "4", "9", "16"] val asc = Array(5, { i -> (i * i).toString() }) asc.forEach { println(it) }
La operación []
significa llamadas a funciones miembro get()
y set()
.
Kotlin también tiene clases para representar matrices de tipos primitivos y sin sobrecarga: ByteArray
, ShortArray
, IntArray
y así sucesivamente. Estas clases no tienen relación de herencia con la clase Array
, pero tienen el mismo conjunto de métodos y propiedades.
val x: IntArray = intArrayOf(1, 2, 3) x[0] = x[1] + x[2]
Deja un comentario