数组
Kotlin中的数组使用Array表示,读者可以查看这个类的相关数组操作方法,包括setter、getter、size属性等。
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>
}
创建数组可以使用库的arrayOf()方法并传递相应的值给这个函数。
例:arrayOf(1, 2, 3)创建数组array [1, 2, 3]
arrayOfNulls()方法用来创建一个给定大小的数组并且使用null值填充。
另一个方法是使用构造方法创建数组。
val asc = Array(5, { i -> (i * i).toString() })
// 结果["0", "1", "4", "9", "16"]
如上所述,[]操作符代表访问成员方法get()和set()。
与Java不同的是,Kotlin中的数组是不变的,这意味着Kotlin不允许我们将Array<String>赋值给Array<Any>,这在一定程度上避免了运行时错误。
Kotlin同时还提供了特殊的代表原生数据类型的类,这样就不需要封装了。ByteArray 、 ShortArray、IntArray等。这些类不是继承自Array,但是他们却拥有一样的方法和属性。同时他们还有对应的构造方法。
val x: IntArray = intArrayOf(1, 2, 3)
x[0] = x[1] + x[2]