- 數(shù)組
數(shù)組在 Kotlin 中使用Array 類來(lái)表示,它定義了 get 與 set 函數(shù)(按照運(yùn)算符重載約定這會(huì)轉(zhuǎn)變?yōu)?[] )以及 size 屬性澎现,以及一些其他有用的成員函數(shù):
class Array<T> private constructor() {
val size: Intoperator fun get(index: Int): T
operator fun set(index: Int, value: T): Unit
operator fun iterator(): Iterator<T>
// …
}
我們來(lái)看定義一個(gè)Int有幾種方法:
fun main() {
val asc1 = arrayOf(1, 2, 4)
val asc2 = arrayOfNulls<Int>(3)
asc2[0] = 1
asc2[1] = 2
asc2[2] = 4
val asc3 = Array(3){ i -> i + 1 }
val asc4 = intArrayOf(1, 2, 4)
val asc5 = IntArray(1){ i -> i + 1}
}
是不是眼花繚亂。其中庫(kù)函數(shù) arrayOfNulls() 可以用于創(chuàng)建一個(gè)指定大小的衙荐、所有元素都為空的數(shù)組篮愉。Kotlin 也有無(wú)裝箱開(kāi)銷的專六的類來(lái)表示原生類型數(shù)組: ByteArray 、ShortArray 集侯、IntArray等等被啼。這些類與 Array 并沒(méi)有繼承關(guān)系,但是它們有同樣的方法屬性集棠枉。
- 集合
fun main() {
var mutableMap = mutableMapOf<Int, String>()
mutableMap[1] = "a"
mutableMap[0] = "b"
mutableMap[1] = "c"
println(mutableMap)
var mutableList = mutableListOf<Int>()
mutableList.add(1)
mutableList.add(0)
mutableList.add(1)
println(mutableList)
var mutableSet = mutableSetOf<Int>()
mutableSet.add(1)
mutableSet.add(0)
mutableSet.add(1)
println(mutableSet)
}
輸出結(jié)果
{1=c, 0=b}
[1, 0, 1]
[1, 0]