java - define - kotlin android
¿Cómo puedo crear una matriz en Kotlin como en Java simplemente proporcionando un tamaño? (1)
Según la reference , las matrices se crean de la siguiente manera:
-
Para los tipos primitivos de Java hay distintos tipos
IntArray
,DoubleArray
, etc., que almacenan valores sin unboxed .Se crean con los correspondientes constructores y funciones de fábrica:
val arrayOfZeros = IntArray(size) //equivalent in Java: new int[size] val numbersFromOne = IntArray(size) { it + 1 } val myInts = intArrayOf(1, 1, 2, 3, 5, 8, 13, 21)
El primero es similar al de Java, solo crea una matriz primitiva llena con el valor predeterminado, por ejemplo, cero para
Int
,false
paraBoolean
. -
Las matrices no primitivas están representadas por la clase
Array<T>
, dondeT
es el tipo de elementos.T
todavía puede ser uno de los tipos primitivos en Java (Int
,Boolean
, ...), pero los valores en el interior estarán encuadrados de manera equivalente aInteger
,Double
, Java, etc.Además, ¿
T
puede ser anulable y no nulo comoString
yString?
.Estos se crean de manera similar:
val nulls = arrayOfNulls<String>(size) //equivalent in Java: new String[size] val strings = Array(size) { "n = $it" } val myStrings = arrayOf("foo", "bar", "baz") val boxedInts = arrayOfNulls<Int>(size) //equivalent in Java: new Integer[size] val boxedZeros = Array(size) { 0 }
¿Cómo puedo crear una matriz como lo hacemos en Java?
int A[] = new int[N];
¿Cómo puedo hacer esto en Kotlin?