我怎样才能创建一个Kotlin像Java一样的数组呢?
我如何创建一个像我们在java中做的数组?
int A[] = new int[N];
我怎么能在Kotlin做到这一点?
根据引用 ,数组创建的方式如下:
-
对于Java的原始类型,存在不同类型的
IntArray
,DoubleArray
等,它们存储了非装箱值。它们是用相应的构造函数和工厂函数创建的:
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)
第一个与Java类似,它只是创建一个基本数组,填充默认值,例如
Int
为零,Boolean
为Boolean
。 -
非原始数组由
Array<T>
类表示,其中T
是项目类型。T
仍然可以是Java(Int
,Boolean
,…)中的原始类型之一,但是其内部的值将被等同于Java的Integer
,Double
等等。此外,
T
可以是可以为null和非空像String
和String?
。这些都是以类似的方式创建的:
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 }