Kotlin 基础教程之数组容器

网友投稿 243 2023-05-03


Kotlin 基础教程之数组容器

Kotlin 基础教程之数组容器

Arrays

Kotlin 标准库提供了arrayOf()创建数组, **ArrayOf创建特定类型数组

val array = arrayOf(1, 2, 3)

val countries = arrayOf("UK", "Germany", "Italy")

val numbers = intArrayOf(10, 20, 30)

val array1 = Array(10, { k -> k * k })

val longArray = emptyArray()

val studentArray = Array(2)

studentArray[0] = Student("james")

和java不一样,Kotlin 的数组是容器类, 提供了 ByteArray, CharArray, ShortArray, IntArray, LongArray, BooleanArray, FloatArray, and DoubleArray。

Lists

List是有序容器,Kotlin 标准库通过listOf()创建list

val intList: List = listOf(20, 5, 10)

val emptyList: List = emptyList()

val nonNulls: List = listOfNotNull(null, "a", "b", "c")

val doubleList: ArrayList = arrayListOf(84.88, 100.25, 999.99)

其中,intList, emptyList, nonNulls是只读的实例,要修改这些list,需要进行类型转换

(intList as AbstractList).set(0, 30)

(nonNulls as java.util.ArrayList).addAll(arrayOf("x", "http://y"))

Maps

Map是容器, Kotlin提供mapOf创建map

val map = mapOf("a" to 1, "b" to 2, "c" to 3)

val value = map.get(b)

val states: MutableMap= mutableMXRtaQapOf("AL" to "Alabama",

"AK" to "Alaska", "AZ" to "Arizona")

val customers: java.util.HashMap = hashMapOf(1 to

Customer("Dina", "Kreps", 1), 2 to Customer("Andy", "Smith", 2))

val linkedHashMap: java.util.LinkedHashMap =

linkedMapOf("red" to "#FF0000","azure" to "#F0FFFF","white" to "#FFFFFF")

val sortedMap: java.util.SortedMap = sortedMapOf(4 to "d",

1 to "a", 3 to "c", 2 to "b")

Sets

Set是没有重复项的容器, Kotlin提供setOf创建Set

val intSet: Set = setOf(1, 21, 21, 2, 6, 3, 2) //1,21,2,6,3

val hashSet: java.util.HashSet = hashSetOf(

Book("Jules Verne", "Around the World in 80 Days Paperback", 2014, "978-1503215153"),

Book("Jules Verne", "Around the World in 80 Days Paperback", 2014, "978-1503215153"))

val sortedIntegers: java.util.TreeSet = sortedSetOf(11, 0, 9, 11, 9, 8)

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:详解vue组件通信的三种方式
下一篇:详解Kotlin中的变量和方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~