记一次安卓(Kotlin)-kotlin数据容器_数组04

159 阅读1分钟

容器分为数组,集合.

Kotlin数组

数组是一种初始化时指定容器大小,不可以动态调整其大小的容器.元素按照顺序存储在一串连续的内存上.


//kotlin数组
//1.使用arrayOf创建数组,必须指定数组的元素,可以是任意类型
val arrayNumber: Array<Int> = arrayOf(1,2,3)
val arrayObjects: Array<Any> = arrayOf(1, true, "2", JSONObject())

//2.使用arrayOfNulls创建空数组
//创建一个指定大小的,所有元素都为空的数组,但必须指定集合中的元素类型
val arrayOfNulls = arrayOfNulls<String>(5)
arrayOfNulls[0] = "element1"

//3.利用array的构造函数,动态创建数组
//创建一个数组,初始化为[“0“,”1“,”4“,”9“,”16“]
val asc = Array(5){i -> (i * i).toString() }

//4.字节数组
val bytes = ByteArray(5)
//还有其他array,专门的数据类型的数组
//....
//it,是lamd表达式的特殊变量,是数组的下标.

//数组循环遍历
//for循环遍历
val intArr3 = IntArray(5) { it * 2 }
for (item in intArr3) {
 println(item)
}

//for下标遍历
for (item in intArr3.indices) {
    println(item.toString() + intArr3[i])
}

//带下标以及值的遍历
for ((index, item) in intArr3.withIndex()) {
    println("$index -> $item")
}

//forEach遍历
intArr3.forEach {
    println("$it") //这里的it是数组的元素
}

//forEach增强版
intArr3.forEachIndexed { index, item ->
    println("$index: $item")
}