在Java中,数组可以这样初始化:
int numbers[] = new int[] {10, 20, 30, 40, 50}
Kotlin的数组初始化是怎样的?
在Java中,数组可以这样初始化:
int numbers[] = new int[] {10, 20, 30, 40, 50}
Kotlin的数组初始化是怎样的?
当前回答
在Kotlin中,我们可以使用arrayOf(), intArrayOf(), charArrayOf(), booleanArrayOf(), longArrayOf()函数来创建数组。
例如:
var Arr1 = arrayOf(1,10,4,6,15)
var Arr2 = arrayOf<Int>(1,10,4,6,15)
var Arr3 = arrayOf<String>("Surat","Mumbai","Rajkot")
var Arr4 = arrayOf(1,10,4, "Ajay","Prakesh")
var Arr5: IntArray = intArrayOf(5,10,15,20)
其他回答
这里有一个简单的例子
val id_1: Int = 1
val ids: IntArray = intArrayOf(id_1)
当初始化下面的字符串检查
val strings = arrayOf("January", "February", "March")
我们可以使用原始int数组专用的arrayOf方法简单地初始化它:
val integers = intArrayOf(1, 2, 3, 4)
Kotlin有专门的类来表示基本类型的数组,没有装箱开销。例如- IntArray, ShortArray, ByteArray等。我需要说明,这些类与父Array类没有继承关系,但它们具有相同的方法和属性集。它们中的每一个都有相应的工厂函数。所以,要在Kotlin中初始化一个数组,你只需要键入以下内容:
val myArr: IntArray = intArrayOf(10, 20, 30, 40, 50)
...或者这样:
val myArr = Array<Int>(5, { i -> ((i + 1) * 10) })
myArr.forEach { println(it) } // 10, 20, 30, 40, 50
现在你可以使用它:
myArr[0] = (myArr[1] + myArr[2]) - myArr[3]
您可以使用这些方法
var numbers=Array<Int>(size,init)
var numbers=IntArray(size,init)
var numbers= intArrayOf(1,2,3)
例子
var numbers = Array<Int>(5, { i -> 0 })
Init表示默认值(initialize)
值得一提的是,当使用kotlin内置程序(例如intArrayOf(), longArrayOf(), arrayOf()等)时,对于给定的大小,您不能使用默认值(或所有值为所需值)初始化数组,相反,您需要通过根据类构造函数调用来进行初始化。
// Array of integers of a size of N
val arr = IntArray(N)
// Array of integers of a size of N initialized with a default value of 2
val arr = IntArray(N) { i -> 2 }